Resteasy转换JAXB和json
resteasy其实是个很好用的类库,下面介绍下如何使用Resteay去
在JAXB和JSON中进行转换。注意resteasy使用的是Jettison JSON library
(地址:http://jettison.codehaus.org/)
1) pom.xml文件的设置
<repositories>
<repository>
<id>JBoss repository</id>
<url>https://repository.jboss.org/nexus/content/groups/public-jboss/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>2.2.1.GA</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxb-provider</artifactId>
<version>2.2.0.GA</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jettison-provider</artifactId>
<version>2.2.0.GA</version>
</dependency>
</dependencies>
2)写一个类,使用JAXB
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name = "movie")
public class Movie {
String name;
String director;
int year;
@XmlElement
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@XmlElement
public String getDirector() {
return director;
}
public void setDirector(String director) {
this.director = director;
}
@XmlAttribute
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
}
3) 然后我们就可以把上面的pojo类转变为json了,看下jboss的reseteasy是如何做的,
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import org.jboss.resteasy.annotations.providers.jaxb.json.BadgerFish;
@Path("/json/movie")
public class JSONService {
@BadgerFish
@GET
@Path("/get")
@Produces("application/json")
public Movie getMovieInJSON() {
Movie movie = new Movie();
movie.setName("Transformers: Dark of the Moon");
movie.setDirector("Michael Bay");
movie.setYear(2011);
return movie;
}
}
4 当访问“/json/movie/gets"时,就显示对应的json了
{
"movie":
{
"@year":"2011",
"director":{
"$":"Michael Bay"
},
"name":{
"$":"Transformers: Dark of the Moon"
}
}
}
至于这个@BadgerFish有点怪怪的,有待进一步学习
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
js参数值传不进ajax中,求看上这几行代码帮指点上哪里写错了/.
js Array惯用操作
java中,图片的base64码在js中开展编码传递到后台中再进行解码并生成图片代码示例
有一个jquery的语义不太清楚,渴求各位解释上.
ExtJs的TreePanel的分页的思路跟实现
JS遍历对象可能数组
开启新窗口有关问题
JS的try.catch.finally
兑现Extjs多图标背景按钮图标定位
用js给html页面添加元素的有关问题
js学习札记3-构造函数、类和原型
为啥会报错 求大神指教
关于Iframe的一点有关问题
ExtJs4学习札记一--基础知识
JSR303 验证框架效率对照
spring3.0.5的mvc施用(exception,json,annotation,xml,upload/download)
请教梅花雪,treeview2中点击时怎么调用自定义的javascript函数呀
<%@ include file=""%>与<jsp:include page=""/>差异
php惯用的header:301,302, Redirects, 404, Javascript, Download, Authentication dialo
应用正则表达式 替换 jsp:directive.page 标签