这段关于http协议实现xml的代码如何实现?用tomcat+eclipse 5C

客户端发送请求、以及处理服务端响应代码为:
//发送xml请求
URL url = new URL("http://127.0.0.1:8080/Test/sendXmlAndReturnXml.do");
String xml = "cccccc客户端请求的xml数据cccccccc";
URLConnection conn = null;
conn = url.openConnection();
conn.setUseCaches(false);
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestProperty("Content-Length", Integer.toString(xml.length()));
conn.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
OutputStream ops = conn.getOutputStream();
OutputStreamWriter osw = new OutputStreamWriter(ops, "GBK");
osw.write(xml);
osw.flush();
osw.close();

    //发送成功后,获取服务器的响应xml串:
    StringBuffer sb = new StringBuffer();
    String line = "";
    InputStream is = conn.getInputStream();
    BufferedReader br = new BufferedReader(new InputStreamReader(is));//三层包装
    while ((line = br.readLine()) != null) {
        sb.append(line+ "\r\n");
    }
    System.out.println(sb.toString());

服务器端:
@Controller

public class TestXMLAction {
@RequestMapping("/sendXmlAndReturnXml.do")
public void sendXmlAndReturnXml(HttpServletRequest request, HttpServletResponse response) throws IOException{
//获取请求的xml
System.out.println("请求的xml数据为:\n" + getXmlFromRequest(request));
//服务端响应xml数据
response.getWriter().print("bbbccc服务端返回响应xml数据,在客户端可以获取到");
}

//从HTTP请求中取出请求的XML
private String getXmlFromRequest(HttpServletRequest request)throws IOException {
    String reqXml = "";
    reqXml = request.getQueryString(); //GET请求
    if (StringUtils.isBlank(reqXml)) { //POST请求
        BufferedReader br = new BufferedReader(new InputStreamReader(request.getInputStream()));
        String line = null;
        StringBuilder sb = new StringBuilder();
        while ((line = br.readLine()) != null) {
            sb.append(line);
        }
        br.close();
        reqXml = sb.toString();
    }
    return reqXml;
}

}
————————————————
版权声明:本文为CSDN博主「weiwei358」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weiwei358/article/details/83670278

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

2
Tomcat修改server.xml文件后项目启动不起来了,显示无法找到网页
2
tomcat插件来部署hellowrld tomcat7-maven-plugin报错
1
ssm开发过程中,tomcat启动失败,target\classes\spring-mvc.xml和spring-mybatis.xml报红
3
eclipse+tomcat9的web.xml已经用了4.0的servlet和约束,每次保存还是卡很久
2
在intellij中创建的webapp无法访问到注解的servlet,但是能访问到index.jsp和使用web.xml配置的servlet。
1
java关于tomcat一个端口号部署一个项目的问题
3
web项目可以正常启动,但是打成war包放到tomcat中启动就报错???
3
[新手求教]Tomcat不加载web.xml
1
[新手求教]Tomcat不调用本身的conf内的context.xml文件
2
如何在高版本的tomcat下运行低版本的项目
3
spring+mybatis,mybatis的mapper.xml配置文件里面有数据库字段错误,为什么tomcat还能正常启动 ?
3
springboot2如何将数据源配置到tomcat的context.xml中并交给spring的DruidDataSource对象?
1
请教一下,到底我的mapper.xml哪里出错了,弄不明白为什么找不到我写的log类
2
maven项目中,使用clean tomcat7:run启动时报如下错误,小白,求大神解救。在pom.xml中已经配置了tomcat7-maven-plugin。
2
tomcat的webapps中没有项目,在server.xml中配置了项目路径,但是看不懂为什么启动tomcat后,项目也能正常访问
1
tomcat8以后用不用再配置web.xml?
2
请问我的这段struts2的代码是哪里有问题?
1
Tomcat 小白 http端口80,当用https强行访问80端口时服务器炸掉了,请问如何解决这个问题?
1
关于Spring框架注解及解耦的问题
1
关于struts.xml读取资源文件值的问题