当前位置: 首页 > news >正文

北京网站设计网站设计公司价格上海建设银行官网网站

北京网站设计网站设计公司价格,上海建设银行官网网站,如何开一个网站,灰色行业网站在以前的系列文章中#xff0c;我介绍了如何利用EclipseLink JAXB#xff08;MOXy#xff09;创建RESTful数据访问服务。 在本文中#xff0c;我将介绍在服务器端利用MOXy的新JSON绑定添加对基于JAXB映射的JSON消息的支持有多么容易。 MOXy作为您的JAX-RS JSON提供程序–服… 在以前的系列文章中我介绍了如何利用EclipseLink JAXBMOXy创建RESTful数据访问服务。 在本文中我将介绍在服务器端利用MOXy的新JSON绑定添加对基于JAXB映射的JSON消息的支持有多么容易。 MOXy作为您的JAX-RS JSON提供程序–服务器端 MOXy作为您的JAX-RS JSON提供程序–客户端 为什么选择EclipseLink JAXBMOXy 以下是将MOXy用作JSON绑定提供程序的一些优点 JSON绑定提供程序中对JAXB注释的最广泛支持。 支持XML和JSON 绑定到JSON和XML – Geocode示例 。 MOXy包含XmlInverseReference之类的扩展名用于将JPA实体映射到JSON和XML 第3部分–将JPA实体映射到XML使用JAXB 。 外部映射文档可作为注释的替代方法 JAX-RS Service中的MOXy的XML元数据 。 客户服务 使用Produces和Consumes批注控制JAX-RS服务理解的消息类型。 在这篇文章中我指定了除“ application / xml”外所有操作现在都支持“ application / json”。 以下帖子提供了对该服务的更详细描述 创建RESTful Web服务–第4/5部分 。 package org.example;import java.util.List; import javax.ejb.*; import javax.persistence.*; import javax.ws.rs.*; import javax.ws.rs.core.MediaType;Stateless LocalBean Path(/customers) public class CustomerService {PersistenceContext(unitNameCustomerService,typePersistenceContextType.TRANSACTION)EntityManager entityManager;POSTConsumes({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})public void create(Customer customer) {entityManager.persist(customer);}GETProduces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})Path({id})public Customer read(PathParam(id) long id) {return entityManager.find(Customer.class, id);}PUTConsumes({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})public void update(Customer customer) {entityManager.merge(customer);}DELETEPath({id})public void delete(PathParam(id) long id) {Customer customer read(id);if(null ! customer) {entityManager.remove(customer);}}GETProduces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})Path(findCustomersByCity/{city})public ListCustomer findCustomersByCity(PathParam(city) String city) {Query query entityManager.createNamedQuery(findCustomersByCity);query.setParameter(city, city);return query.getResultList();}} MOXyJSONProvider 我们将实现JAX-RS MessageBodyReader / MessageBodyWriter以插件支持MOXy的JSON绑定。 此实现足够通用可以直接使用MOXy作为JAXB提供程序为任何JAX-RS服务启用JSON绑定。 一些有趣的注意事项 MOXy没有编译时间依赖性。 eclipselink.media-type属性用于在unmarshaller第34行和marshaller第55行上启用JSON绑定。 eclipselink.json.include-root属性用于指示XmlRootElement批注在JSON绑定中应被忽略第35和56行。 创建JAXBContext时代码首先检查以查看是否已为此类型注册JAXBContext第70和71行。 如果要利用MOXy的外部映射文档 JAX-RS Service中的MOXy的XML元数据这将很有用。 package org.example;import java.io.*; import java.lang.annotation.Annotation; import java.lang.reflect.*; import javax.xml.transform.stream.StreamSource;import javax.ws.rs.*; import javax.ws.rs.core.*; import javax.ws.rs.ext.*; import javax.xml.bind.*;Provider Produces(MediaType.APPLICATION_JSON) Consumes(MediaType.APPLICATION_JSON) public class MOXyJSONProvider implementsMessageBodyReaderObject, MessageBodyWriterObject{Contextprotected Providers providers;public boolean isReadable(Class? type, Type genericType,Annotation[] annotations, MediaType mediaType) {return true;}public Object readFrom(ClassObject type, Type genericType,Annotation[] annotations, MediaType mediaType,MultivaluedMapString, String httpHeaders, InputStream entityStream)throws IOException, WebApplicationException {try {Class? domainClass getDomainClass(genericType);Unmarshaller u getJAXBContext(domainClass, mediaType).createUnmarshaller();u.setProperty(eclipselink.media-type, mediaType.toString());u.setProperty(eclipselink.json.include-root, false);return u.unmarshal(new StreamSource(entityStream), domainClass).getValue();} catch(JAXBException jaxbException) {throw new WebApplicationException(jaxbException);}}public boolean isWriteable(Class? type, Type genericType,Annotation[] annotations, MediaType mediaType) {return true;}public void writeTo(Object object, Class? type, Type genericType,Annotation[] annotations, MediaType mediaType,MultivaluedMapString, Object httpHeaders,OutputStream entityStream) throws IOException,WebApplicationException {try {Class? domainClass getDomainClass(genericType);Marshaller m getJAXBContext(domainClass, mediaType).createMarshaller();m.setProperty(eclipselink.media-type, mediaType.toString());m.setProperty(eclipselink.json.include-root, false);m.marshal(object, entityStream);} catch(JAXBException jaxbException) {throw new WebApplicationException(jaxbException);}}public long getSize(Object t, Class? type, Type genericType,Annotation[] annotations, MediaType mediaType) {return -1;}private JAXBContext getJAXBContext(Class? type, MediaType mediaType) throws JAXBException {ContextResolverJAXBContext resolver providers.getContextResolver(JAXBContext.class, mediaType);JAXBContext jaxbContext;if(null resolver || null (jaxbContext resolver.getContext(type))) {return JAXBContext.newInstance(type);} else {return jaxbContext;}}private Class? getDomainClass(Type genericType) {if(genericType instanceof Class) {return (Class?) genericType;} else if(genericType instanceof ParameterizedType) {return (Class?) ((ParameterizedType) genericType).getActualTypeArguments()[0];} else {return null;}}} 服务器设置 如果将GlassFish用作应用程序服务器则需要使用EclipseLink 2.4安装中的对应软件包替换以下EclipseLink软件包。 org.eclipse.persistence.antlr.jar org.eclipse.persistence.asm.jar org.eclipse.persistence.core.jar org.eclipse.persistence.jpa.jar org.eclipse.persistence.jpa-modelgen.jar org.eclipse.persistence.moxy.jar org.eclipse.persistence.oracle.jar 进一步阅读 如果您喜欢这篇文章那么您可能也会对以下内容感兴趣 RESTful服务 MOXy作为您的JAX-RS JSON提供程序–客户端 创建一个RESTful服务 第1部分–数据库 第2部分–将数据库映射到JPA实体 第3部分–将JPA实体映射到XML使用JAXB 第4部分– RESTful服务 第五部分–客户 JAX-RS服务中的MOXy的XML元数据 JSON绑定 使用EclipseLink MOXy进行JSON绑定– Twitter示例 绑定到JSON和XML –地理编码示例 应用服务器集成 GlassFish 3.1.2充满了MOXyEclipseLink JAXB EclipseLink MOXy是WebLogic Server 12c中的JAXB提供程序 参考 MOXy作为您的JAX-RS JSON提供程序–来自Java XML和JSON绑定博客的JCG合作伙伴 Blaise Doughan的服务器端 。 翻译自: https://www.javacodegeeks.com/2012/04/moxy-as-your-jax-rs-json-provider.html
http://wiki.neutronadmin.com/news/233944/

相关文章:

  • 网站首页图片 代码重庆厂区招工招聘信息查询
  • ftp网站 免费贫困户房屋建设补助在哪个网站公布
  • 外贸门户网站做网站的大型公司
  • 做设计素材在哪个网站成都网站建设名录
  • 网站在线支付方案深圳装修公司排行榜
  • 南宁建站软件咋么做进网站跳转加群
  • 用国外网站 图片做自媒体成都网络推广哪家好
  • 网站代运营公司有哪些拓者吧室内设计吧官网
  • 做文案应该关注的网站推荐广州定制型网站建设
  • 响应式网站怎么做pc端的上海有哪些软件公司
  • 如何看别人网站用什么做的组网方案
  • 国内优秀的响应式网站宁波公司注销流程
  • 本机可以做网站的服务器快速建站php
  • 北京的p2p网站建设成都网站系统开发
  • 京东网站 用什么做的什么叫网站根目录
  • 怎么查看自己网站有没有被百度收录重庆网站建设公司价钱
  • WordPress自动建站成都网站建设哪家强
  • 舆情网站直接打开南宁模板网页制作
  • 汽车网站模板wordpress单选框
  • 巩义网站建设与制作企业网站的建设与实现
  • 陕西省建设厅官网查询宁波seo关键词引流
  • 海纳企业网站建设模板点手机域名注册局官网
  • 做网站全自动cpa引流怎么做推广和宣传
  • 外贸类网站建设软文公司代写
  • 网站运营案例商场建设相关网站
  • 重庆建新建设工程有限公司网站做lgoo的网站一般有哪些
  • 郑州轨道网站开发网站备案需要准备什么材料
  • 贵阳市城乡建设部网站在线图片修改
  • 安阳市建设工程领域网站seo优化技术厂家
  • 做房产网站接不到电话wordpress在线解析