java Http消息传递之POST和GET两种方法--通过实用工具类来获取服务器资源
实现该方法需要导入一些jar包
可以去一下地址下载:
http://pan.baidu.com/s/1hqrJF7m
/**
* 实用工具类来获取服务器资源
*
* get方法传送数据
*
* 1、通过path设定传送方式
* 2、创建客户端
* 3、得到输入流
* 4、读取流准备工作
* 5、读取并写入
* @throws IOException
* @throws ClientProtocolException
*
*/
public static String getHttpResult(String path) throws ClientProtocolException, IOException{
/*1、通过path设定传送方式*/
HttpGet get=new HttpGet(path);
/*2、创建客户端*/
HttpClient client=new DefaultHttpClient();
//通过get方式发送数据给服务器
HttpResponse response=client.execute(get);
/*3、得到输入流*/
if(response.getStatusLine().getStatusCode()==200){
InputStream in=response.getEntity().getContent();
/*4、读取流准备工作*/
ByteArrayOutputStream bos=new ByteArrayOutputStream();
byte[]arr=new byte [1024];
int len=0;
/*5、读取并写入*/
while((len=in.read(arr))!=-1){
bos.write(arr, 0, len);
}
byte[]b=bos.toByteArray();
return new String(b,0,b.length);
}
return null;
}
/**
* 实用工具类来获取服务器资源
*
* Post方法传送数据
*
* 1、通过path设定传送方式
* 2、创建客户端
* 3、得到输入流
* 4、读取流准备工作
* 5、读取并写入
* @throws IOException
* @throws ClientProtocolException
*
*/
public static String getHttpResult(String path) throws ClientProtocolException, IOException{
/*0、初始化要发送的数据用list存储*/
List<NameValuePair> list=new ArrayList<NameValuePair>();
list.add(new BasicNameValuePair("name", "zhangsan"));
list.add(new BasicNameValuePair("name", "lisi"));
list.add(new BasicNameValuePair("name", "wangwu"));
/*1、通过path设定传送方式*/
HttpPost post=new HttpPost(path);
/*2、创建客户端*/
HttpClient client=new DefaultHttpClient();
//通过post表单方式发送数据给服务器
//建立表单
UrlEncodedFormEntity entity=new UrlEncodedFormEntity(list,"utf-8");
//装载到post中
post.setEntity(entity);
HttpResponse response=client.execute(post);
/*3、得到输入流*/
if(response.getStatusLine().getStatusCode()==200){
InputStream in=response.getEntity().getContent();
/*4、读取流准备工作*/
ByteArrayOutputStream bos=new ByteArrayOutputStream();
byte[]arr=new byte [1024];
int len=0;
/*5、读取并写入*/
while((len=in.read(arr))!=-1){
bos.write(arr, 0, len);
}
byte[]b=bos.toByteArray();
return new String(b,0,b.length);
}
return null;
}
java Http消息传递之POST和GET两种方法--通过实用工具类来获取服务器资源的更多相关文章
- java Http消息传递之POST和GET两种方法
/** * 通过Get方法来向服务器传值和获取信息, * 这里举例假设的前提是,链接上服务器,服务器直接发送数据给本地 * * 大体的思路: * 1.首先通过URL地址来获得链接的借口 * 通过接口, ...
- Java构造和解析Json数据的两种方法详解二
在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ...
- Java构造和解析Json数据的两种方法详解二——org.json
转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/24/3096437.html 在www.json.org上公布了很多JAVA下的jso ...
- Java构造和解析Json数据的两种方法详解一——json-lib
转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html 在www.json.org上公布了很多JAVA下的jso ...
- Java执行shell脚本并返回结果两种方法的完整代码
Java执行shell脚本并返回结果两种方法的完整代码 简单的是直接传入String字符串,这种不能执行echo 或者需要调用其他进程的命令(比如调用postfix发送邮件命令就不起作用) 执行复杂的 ...
- DES加密 java与.net可以相互加密解密两种方法
DES加密 java与.net可以相互加密解密两种方法 https://www.cnblogs.com/DrWang/archive/2011/03/30/2000124.html sun.misc. ...
- Eclipse将引用了第三方jar包的Java项目打包成jar文件的两种方法
方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 “MANIFEST.MF”, 由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFEST.MF,在该项目 ...
- 将引用了第三方jar包的Java项目打包成jar文件的两种方法
方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 “MANIFEST.MF”, 由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFEST.MF,在该项目 ...
- 使用 Eclipse 可视化插件 windowbuilder 进行Java GUI开发(插件安装的两种方法)
对于Java GUI开发 其实最方便的方法是用插件制作,当然先了解完代码原理是最好的. eclispe安装windowbuilder有两种方式,一种是离线安装,一种是在线安装. 一.第一种在线安装: ...
随机推荐
- BUG,带给我的思考
今天打开EverNote时,翻到了四年前在anjuke时做的一些bug分析总结.现在回过头看看也是有些价值所在,挑选出部分bug分享,希望能有所启发. 一. iOS新房APP4.4由于在91市场进行试 ...
- JavaScript数据结构——栈的实现
栈(stack)是一种运算受限的线性表.栈内的元素只允许通过列表的一端访问,这一端被称为栈顶,相对地,把另一端称为栈底.装羽毛球的盒子是现实中常见的栈例子.栈被称为一种后入先出(LIFO,last-i ...
- 3DES 加密 解密
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #c91b13 } p.p2 { margin: 0.0px 0. ...
- (1)写给Web初学者的教案-----学习Web的知识架构
1:学习Web的知识架构 前文中我们简单的介绍了一些关于Web的基本知识,这里任老师再次强调一下凡是用浏览器打开的网站我们就称之为Web应用程序(B/S结构).除此之外其它需要下载安装的软件或是手机 ...
- 去掉标题栏的方法(使用requestWindowFeature(Window.FEATURE_NO_TITLE);为什么失效)
使用requestWindowFeature(Window.FEATURE_NO_TITLE)隐藏标题栏失效的原因,可能是activity继承的是AppCompatActivity.下面详细介绍了使用 ...
- Node软件的安装
1.官网网址:https://nodejs.org/en/ 左边被推荐,右边最新 下载完成一键下一步直接安装,当然,如果你想修改安装目录的话当然没问题,注意:不要有英文目录 2.Window+r打开命 ...
- .NET Core中的包、元包与框架
本文为翻译文章,原文:Packages, Metapackages and Frameworks .NET Core是一个由NuGet包组成的平台.一些产品受益于细粒度包的定义,也有一些受益于粗粒度包 ...
- 消息队列-ActiveMQ
1 业务需求描述 举例描述: 再警情通报的业务时通过发送消息界面可以选择 警情联络,和船情通报两种消息 发送方式可分为 一对一发送:部门对部门.个人对个人 一对多发送:部门对多部门.个人对多人 2 功 ...
- 【转】请求处理机制其三:view层与模板解析
进入 View 了 如果处理过程这时候还在继续的话,处理器会调用 view function.Django 中的 Views 不很严格因为它只需要满足几个条件: 必须可以被调用. 必须接受 djan ...
- 对VC++6.0爱得深沉(二)个性工具的定制
初始界面看起来很简洁,但是经过一番改造后,你会拥有私人定制的壮丽界面O(∩_∩)O~,让我们开始吧. 1)原有工具的显示隐藏.位置调整: 比如你觉得这个插入图标没什么用,想把这个隐藏,那么你可以打开[ ...