Jersey构建restful风格的WebSerivices(二)

一、 总体说明

XML和JSON 是最为常用的数据交换格式。本例子演示如何将java对象,转成XML输出。

二、流程

1.在上文的例子中,创建一个包“com.waylau.rest.bean”

2.在该包下创建一个JAVA类"User"

[java] view plaincopyprint?

  1. package com.waylau.rest.bean;
  2. import javax.xml.bind.annotation.XmlRootElement;
  3. /*
  4. * 用户 bean
  5. * @author waylau.com
  6. * 2014-3-17
  7. */
  8. @XmlRootElement
  9. public class User {
  10. private String userId;
  11. private String userName;
  12. private String age;
  13. public User() {};
  14. public User(String userId, String userName, String age) {
  15. this.userId = userId;
  16. this.userName = userName;
  17. this.age = age;
  18. }
  19. public String getUserId() {
  20. return userId;
  21. }
  22. public void setUserId(String userId) {
  23. this.userId = userId;
  24. }
  25. public String getUserName() {
  26. return userName;
  27. }
  28. public void setUserName(String userName) {
  29. this.userName = userName;
  30. }
  31. public String getAge() {
  32. return age;
  33. }
  34. public void setAge(String age) {
  35. this.age = age;
  36. }
  37. }
 

注意:该类上面增加了一个注解“@XmlRootElement”,在将该类转化成XML时,说明这个是XML的根节点。

3.在“com.waylau.rest.resources”中,增加资源“UserResource“,代码如下:

[java] view plaincopyprint?

  1. package com.waylau.rest.resources;
  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import java.util.Map;
  6. import javax.ws.rs.Path;
  7. import javax.ws.rs.Produces;
  8. import javax.ws.rs.PathParam;
  9. import javax.ws.rs.core.MediaType;
  10. import javax.ws.rs.DELETE;
  11. import javax.ws.rs.GET;
  12. import javax.ws.rs.POST;
  13. import javax.ws.rs.PUT;
  14. import com.waylau.rest.bean.User;
  15. @Path("/users")
  16. public class UserResource {
  17. private static Map<String,User> userMap = new HashMap<String,User>();//存储用户
  18. /**
  19. * 查询所有
  20. * @return
  21. */
  22. @GET
  23. @Produces(MediaType.APPLICATION_XML)
  24. public List<User> getAllUsers(){
  25. List<User> users = new ArrayList<User>();
  26. User u1 = new User("001","WayLau","26");
  27. User u2 = new User("002","King","23");
  28. User u3 = new User("003","Susan","21");
  29. userMap.put(u1.getUserId(), u1);
  30. userMap.put(u2.getUserId(), u2);
  31. userMap.put(u3.getUserId(), u3);
  32. users.addAll( userMap.values() );
  33. return users;
  34. }
  35. @GET
  36. @Path("/getUserXml")
  37. @Produces(MediaType.APPLICATION_XML)
  38. public User getUserXml() {
  39. User user  = new User();
  40. user.setAge("21");
  41. user.setUserId("004");
  42. user.setUserName("Amand");
  43. return user;
  44. }
  45. }

其中MediaType.APPLICATION_XML 说明了是以XML形式输出

在浏览器输入http://localhost:8089/RestDemo/rest/users/getUserXml,输出单个对象

在浏览器输入 http://localhost:8089/RestDemo/rest/users  输出对象的集合

本文转自:http://blog.csdn.net/kkkloveyou/article/details/21415735

时间: 2024-10-12 00:52:48

Jersey构建restful风格的WebSerivices(二)的相关文章

Jersey构建Restful风格的webservices

最近一直在搞老项目的开发工作,很少写博文了.听了两位阿里巴巴大牛的讨论,决定试试用restful风格的webservices看看. 这里用的是Jersey这个框架,刚开始弄,有点麻烦,只能到处查资料.网上的资料也比较零碎,这里整理一下. 一.helloworld 需要三个包,这里从maven获取. <dependencies> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>j

Jersey构建Restful风格的Webserivces(三)

一.总体说明 通过jersey-client接口,创建客户端程序,来调用Jersey实现的RESTful服务,实现增.删.改.查等操作. 服务端主要是通过内存的方式,来模拟用户的增加.删除.修改.查询等操作. 二.创建服务端 1.在上文项目中, 在“com.waylau.rest.resources.UserResource“中修改代码, 首先创建一个HashMap,用来保存添加的用户 [java] view plaincopyprint? private static Map<String,U

基于jersey和Apache Tomcat构建Restful Web服务(二)

基于jersey和Apache Tomcat构建Restful Web服务(二) 上篇博客介绍了REST以及Jersey并使用其搭建了一个简单的“Hello World”,那么本次呢,再来点有趣的东西,当然也是很简单了,仅仅是在路径中包含参数而已了.接下来开始动手实践吧. 在路径中包含参数 接下来就在上次的基础上进行改动即可,或者是再添加一个方法,随意了,这个方法主要就是在路径中加入输入的参数,并且根据参数的不同,它的返回值也不同,返回值为“Hello”+你输入的参数.这里用到了“PathPar

lucene构建restful风格的简单搜索引擎服务

来自于本人博客: lucene构建restful风格的简单搜索引擎服务 本人的博客现在也要改成使用lucene进行全文检索的功能,因此在这里把代码贴出来与大家分享 一,目录结构: 二,配置文件: 总共有四个配置文件:bonecp-config.xml,IKAnalyzer.cfg.xml,log4j.properties,system-config.xml 1.bonecp-config.xml是配置jdbc连接池用的,不用这个配置也行,bonecp包有默认配置 2.IKAnalyzer.cfg

用Jersey构建RESTful服务7--Jersey+SQLServer+Hibernate4.3+Spring3.2

一.整体说明 本例执行演示了用 Jersey 构建 RESTful 服务中.怎样集成 Spring3 二.环境 1.上文的项目RestDemo 2.Spring及其它相关的jar ,导入项目 三.配置 1.根文件夹下下创建 Spring 的配置文件applicationContext.xml: 配置例如以下: 四.执行 1.先执行项目 2.执行UserClient.java測试,控制台输出例如以下 ****添加用户addUser**** ****查询全部getAllUsers**** [{"us

springMVC+json构建restful风格的服务

首先.要知道什么是rest服务,什么是rest服务呢? REST(英文:Representational State Transfer,简称REST)描写叙述了一个架构样式的网络系统.比方 web 应用程序. 它首次出如今 2000 年 Roy Fielding 的博士论文中,他是 HTTP 规范的主要编写者之中的一个. 在眼下主流的三种Web服务交互方案中.REST相比于SOAP(Simple Object Access protocol,简单对象訪问协议)以及XML-RPC更加简单明了,不管

Spring Boot 中 10 行代码构建 RESTful 风格应用

RESTful ,到现在相信已经没人不知道这个东西了吧!关于 RESTful 的概念,我这里就不做过多介绍了,传统的 Struts 对 RESTful 支持不够友好 ,但是 SpringMVC 对于 RESTful 提供了很好的支持,常见的相关注解有: @RestController @GetMapping @PutMapping @PostMapping @DeleteMapping @ResponseBody ... 这些注解都是和 RESTful 相关的,在移动互联网中,RESTful 得

用Jersey构建RESTful服务1--HelloWorld

本文具体代码实现参考自:http://blog.csdn.net/kkkloveyou/article/details/21391033,如有问题,请联系我. 本文仅仅是对原文做了一点补充,感谢原作者的精彩文章,对我帮助很大. 一,环境 IDE:myeclipse10 tomcat版本,jdk版本会在下一篇文章做详细说明. 二,项目的构建 在https://jersey.java.net/download.html中,可以发现两条很实用的mvn指令: 命令一:构建基于 Servlet conta

无废话Jersey构建RESTful服务之WebService系统教程 --3 [JAVA对象转成JSON输出]

一. 总体说明 XML和JSON 是最为常用的数据交换格式.本例子演示如何将JAVA对象,转换成JSON输出. 二.流程 1.在上文项目中, 在“cn.itrush.rest.resources.UserResource“中增加代码,代码如下: 1 package cn.itrush.rest.resources; 2 3 import java.util.ArrayList; 4 import java.util.HashMap; 5 import java.util.List; 6 impo