我们在一般系统的通信过程中,可以用http协议进行通信。比如一个j2ee项目和一个j2se项目之间进行通信。我们可以使用httpclient方法。看例子:
首先用的jar包:
commons-logging-1.0.4.jar
commons-codec-1.8.jar
commons-httpclient-3.1.jar
这三个jar
这是httpclient例子方法
package com.sysc.xmleditor.httpClient;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLEncoder;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.params.HttpMethodParams;
public class FontAPIHandle {
public static void main(String[] args) throws Exception {
String str="http://localhost:8080/shuju/font";
String s=getContent(str, "哈哈");//设置要传输的参数
System.out.println(s);
}
/**
* 返回接口信息
* @param strUrl,接口参数
* paramStr 参数信息
* @return 服务器返回信息
*/
public static String getContent(String url,String paramStr){
StringBuffer buf = new StringBuffer();
try{
HttpClient client = new HttpClient(); //创建httpclient对象
PostMethod method = new PostMethod(url); //创建post实例
method.addParameter("name", paramStr); //设置要传输的数据
HttpMethodParams param = method.getParams();// 得到参数对象
param.setContentCharset("UTF-8"); //设置参数编码格式
client.executeMethod(method);//发送
//打印服务器返回的状态
System.out.println(method.getStatusLine());
//打印返回的信息
InputStream stream = method.getResponseBodyAsStream();
BufferedReader br = new BufferedReader(new InputStreamReader(stream, "UTF-8"));
String line;
while (null != (line = br.readLine())) {
buf.append(line).append("\n");
}
//释放连接
method.releaseConnection();
}catch(Exception e){
System.out.println("发送信息失败!");
e.printStackTrace();
}
return buf.toString();
}
}
这是web项目的程序:
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println(req.getParameter("data"));
String name=req.getParameter("name");//参数直接用getParameter方法接收就可以了,和普通的url传参一样的
System.out.println(name);
resp.setContentType("text/plain; charset=utf-8");
PrintWriter out=resp.getWriter ();
out.print("欢迎:"+name);
}
相关推荐
java HttpClient 发送GET请求和带有表单参数的POST请求教程例子
httpclient常用封装工具 doGet(String url, Map, String> param) doPost(String url, Map, String> param) doPostJson(String url, String json)
java httpclient 所需要的包,都是最新版的 commons-logging-1.1.3.jar commons-codec-1.6.jar commons-httpclient-3.1.jar
模拟登录 不提供用户名密码
java httpclient 抓取 数据 和jar 包
commons-beanutils-1.8.0.jar commons-codec.jar commons-collections-3.2.jar 等12个jar包
Java Httpclient的一个小例子,只有客户端的代码,服务器端随便写一个servlet都行,我也是新学的,主要是自己下载的jar包然后自己整合的
用java实现httpclient请求的类
JavaHttpClient实例
该工具类使用httpclient进行http or https请求,包括requestbody格式和form表单格式,另外含文件服务器中转上传方法,几乎支持所有常用接口调用,内含详细注释和说明文件,含jar包,及maven方式引用,拿过去直接用吧
java httpclient 第三方包
java的电商开发工具类,其中有HttpClient爬虫式工具类,基于Http以及Https都可以进行操作.
Eclipse下完整的java程序,包含HttpClient的全部jar包。通过java类文件,实现通过链接将文件下载本地
java httpclient工具类好用
java httpClient status 400错误的Header中字符不合法(csdn)————程序
基于java httpclient的12306 买票软件, 仅供学习使用
NULL 博文链接:https://piranha.iteye.com/blog/2119924
JAVA利用HttpClient进行HTTPS接口调用
初级爬虫
(完整版)JAVA利用HttpClient进行POST请求(HTTPS).doc