HttpPost发送字符串到服务器,服务器接收代码并显示怎么写Java代码?

客户端代码大致如下:
String name,job;
String URL=http://10.0.2.2:8080/test
HttpPost post = new HttpPost(URL);
MultipartEntity mpEntity = new MultipartEntity();
mpEntity.addPart(“name”,new StringBody(name.toString));
mpEntity.addPart(“job”,new StringBody(job.toString));
post.setEntity(mpEntity);
HttpResponse response = new DefaultHttpClient().execute(post);
if (response.getStatusLine().getStatusCode() == 200)
{
String strResult = EntityUtils.toString(response.getEntity());
}

服务器端用Java怎么写代码怎么配置?需要用到web.xml吗,需要的话 如何配置?

服务器端接收客户端的请求的话,需要在服务器端的java文件实现HttpServlet这个接口,并且在web.xml里配置一个客户端的请求拦截。

web.xml里的代码里添加

<servlet>
   <servlet-name>testServlet</servlet-name><!--这个名字可以自己定-->
   <servlet-class>com.sun.testServlet</servlet-class><!--这里是你需要接收客户端请求的那个类以及包名,也就是下面拦截到的url会转发到的那个类-->
  </servlet>
  <servlet-mapping>
   <servlet-name>testServlet</servlet-name><!--和上面的name需要一样-->
   <url-pattern>/*</url-pattern><!--什么类型的客户端请求会被拦截,/* 就是全拦截了-->
</servlet-mapping>

然后再服务器端的类文件,要实现 HttpServlet这个接口。并把doGet()方法和doPost()方法重写。

这两种方法分别对应的是客户端的get请求和post请求的处理,你的是post请求的话,就在doPost()方法内,写你的业务。

然后再用下面两句话,设置你要返回客户端的数据。


//这是设置你要返回去的数据。value才是你的数据,key是标签。

request.setAttribute("key", "value");  


//这是设置你要返回去test.jsp这张页面。

request.getRequestDispatcher("test.jsp").forward(request, response);


不知道你是不是这个意思,你可以再去看看相关servlet方面的知识,


关于客户端和服务器端大概也就是有个servlet作为请求的拦截


然后经过相关判断后,选择性的传到服务器的相应类里面。


再经过类里面的业务,把得到需要的数据回传到指定的页面上。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-26
问下你是在想上传文件么?
我最近也写过类似的,不过没有写像你说的服务器接收的这部分,你是想测试吗?
如果是仅仅是字符串,没必要搞这么复杂,直接用StringEntity或者HttpEntity就OK了。
MultipartEntity一般是发送Multipart/form-data类型数据才用的,因为这个接收处理时比StringEntity要麻烦,具体的看下httpclient4.3、httpcore4.3、httpmime相关文档,网上也有相关内容,我存在公司电脑上。
帮你找到了相关文档:
http://blog.csdn.net/jdsjlzx/article/details/8825696追问

你下面的回复正是我的意思:对于用MultipartEntity封装的请求包在服务器端如何解析拿到请求中的数据,现在只上传这些字符串,想在本地模拟服务器测试。

本回答被提问者采纳
第2个回答  2014-02-23

后台获取参数值:

@Override

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    System.out.println("doPost method is called.");
    String id = request.getParameter("id");
    String name = request.getParameter("name");
    String age = request.getParameter("age");
    System.out.println("id:" + id + ", name:" + name + ", age:" + age);
    response.getWriter().write("POST_SUCCESS");
}

相似回答