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作为请求的拦截
然后经过相关判断后,选择性的传到服务器的相应类里面。
再经过类里面的业务,把得到需要的数据回传到指定的页面上。
我最近也写过类似的,不过没有写像你说的服务器接收的这部分,你是想测试吗?
如果是仅仅是字符串,没必要搞这么复杂,直接用StringEntity或者HttpEntity就OK了。
MultipartEntity一般是发送Multipart/form-data类型数据才用的,因为这个接收处理时比StringEntity要麻烦,具体的看下httpclient4.3、httpcore4.3、httpmime相关文档,网上也有相关内容,我存在公司电脑上。
帮你找到了相关文档:
http://blog.csdn.net/jdsjlzx/article/details/8825696
你下面的回复正是我的意思:对于用MultipartEntity封装的请求包在服务器端如何解析拿到请求中的数据,现在只上传这些字符串,想在本地模拟服务器测试。
后台获取参数值:
@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");
}