jersey之get,put,post,delete简单使用
要使用jersey首先要有相应的依赖包,获取方法有很多,本地下载依赖文件或maven获取,这里假设你的环境已经搭建好了。要使用jersey首先要初始化一个client客户端,下面是最简单的一个get请求
//初始化客户端
ClientConfig cc=new DefaultClientConfig();
Client client=Client.create(cc);
WebResource webResource=client.resource(url);
//进行http连接
ClientResponse response=webResource.get(ClientResponse.class);
int status=response.getStatus();//获取状态码
String textEntity=response.getEntity(String.class);//获取返回内容
url可以是目标地址或者目标地址的基地址(再访问的时候可以设置子地址)
首先说明一些常用操作。
- url参数设置,既url链接“?”后的参数,比如"https://i.cnblogs.com/EditPosts.aspx?opt=1"中的opt=1
//插入参数param1,param2
MultivaluedMap queryParams = new MultivaluedMapImpl();
queryParams.add("param1", "val1");
queryParams.add("param2", "val2");
ClientResponse = webResouce.queryParams(queryParams).get(String.class);
2.http头header设置,百度了很多未找到很方便的设置方法,下面的方法仅供参考,如果更好的欢迎评论指出。
//通过header方法一个个添加header头信息
ClientResponse response=webResource.header("content-text","application/json").header(" "," ").get(ClientResponse.class);
3.消息体body设置,如post,put等可以传递一个对象,这里以json对象为例
JSONObject obj=new JSONObject();
try {
obj.put("username", "test8");
obj.put("password", "123456");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ClientResponse response=webResource.header("content-text","application/json").header(" "," ").put(ClientResponse.class,obj);//参数列表里加入obj对象
get,put,post,delete方法仅仅是修改webResource.put/get/post/delete()
下面附上别人对四种方法的详细讲解
http://hugh-wangp.iteye.com/blog/1797237
jersey之get,put,post,delete简单使用的更多相关文章
- rest模式get,post,put,delete简单讲解
1.请求方法为get时,会向数据库请求数据,类似于select语言,只能达到查询的效果,不会添加,修改,不会影响资源的内容,无副作用 2.请求方法为post时,该方法,用于向服务器添加数据,可以改变数 ...
- new和delete为什么要匹配
operator new和operator delete函数有两个重载版本: void* operator new (size_t); // allocate an object void* oper ...
- C++ new和delete实现原理——new和delete最终调用malloc和free
new和delete最终调用malloc和free,关于malloc和free实现原理参见这篇文章: http://blog.csdn.net/passion_wu128/article/detail ...
- C++ delete 和 delete []
C++ delete 和 delete [] 简单结论: new delete new [] delete [] 文章 : 对 delete [] 的声明 void operator delete ...
- 【校招面试 之 C/C++】第16题 C++ new和delete的实现原理
1.new new操作针对数据类型的处理,分为两种情况: (1)简单数据类型(包括基本数据类型和不需要构造函数的类型) 代码实例: int* p = new int; 汇编码如下: int* p = ...
- java各种框架的比较,分析
Spring 框架 优点 1.提供了一种管理对象的方法,可以把中间层的对象有效地组织起来 2.采用了分层结构,可以增量引入到项目中. 3.代码测试较容易 4.非侵入性,应用程序对Spring API的 ...
- SQL Server中的Merge关键字
本文转载地址:http://www.cnblogs.com/CareySon/archive/2012/03/07/2383690.html 简介 Merge关键字是一个神奇的DML关键字.它在SQL ...
- SQL merge into 表合并
Merge关键字是一个神奇的DML关键字.它在SQL Server 2008被引入,它能将Insert,Update,Delete简单的并为一句.MSDN对于Merge的解释非常的短小精悍:”根据与源 ...
- c++new/delete---9
原创博客:转载请标明出处:http://www.cnblogs.com/zxouxuewei/ C++new和delete实现原理 new 与delete是C++预定的操作符,它们一般需要配套使用 ...
随机推荐
- python之virtualenv的简单使用
什么是virtualenv? virtualenv可以创建独立Python开发环境,比如当前的全局开发环境是python3.6,现在我们有一个项目需要使用django1.3,另一个项目需要使用djan ...
- springmvc fileupload
1.pom文件中fileupload的dependencyyinr <dependency> <groupId>commons-fileupload</groupId&g ...
- Grid控件
Grid控件是WPF布局容器中功能最强大.最灵活的控件.Grid控件基本上能够完成其他WPF容器控件所能完成的功能,Microsoft建议大多数界面的布局都使用Grid控件来实现,因此默认情况下.vs ...
- Sping框架初步使用1
Spring核心容器的理论:Spring核心容器就是一个超大工厂,所有的对象都会被当成Spring容器的核心管理对象,Spring把容器中一切对象统称为Bean(只要是一个Java类,Spring就可 ...
- Skype坑爹报错:“旧版本无法删除,请联络您的技术支持小组 ”的解决办法
真是恶心的让人想吐的报错.现在终于解决了,跟大家分享一下方法. 先给问题截个图,如下 首先当我去搜解决办法之前,我已经在[控制面板]的[卸载程序]里把Skype删除了,真是让我后悔不已的操作啊!!因为 ...
- 撩课-Web大前端每天5道面试题-Day5
1.写一个深度克隆方法(es5)? /** * 深拷贝 * @param {object}fromObj 拷贝的对象 * @param {object}toObj 目标对象 */ function d ...
- 撩课-Python-每天5道面试题-第4天
一. for循环和while循环中的else代表什么意思? 当for循环和while循环顺利的遍历完成时, 就会执行else分支 如果循环过程中, 碰到continue, 只要没有打断循环, 就会继续 ...
- 找到链表中倒数第k个数
本文来源于翁舒航的博客,点击即可跳转原文观看!!!(被转载或者拷贝走的内容可能缺失图片.视频等原文的内容) 若网站将链接屏蔽,可直接拷贝原文链接到地址栏跳转观看,原文链接:https://www.cn ...
- [Code+#4]最短路
考虑xor运算的自反性 我们可以直接枚举二进制位异或来进行转移 这样边数大约是\(n \log n\)级别的 总复杂度\(\Theta((n\log n+m)\log n)\) #include&qu ...
- jquery操作select(选中,取值)
最近工作中总出现select 和 option问题,整理一下,内容大部分源于网络资料 一.基础取值问题 例如<select class="selector"></ ...