JAX-RS 简化 REST 学习
最近一个项目用到了webservice,决定用rest来实现,发现这方面的中文资料真的是不多。经过自己一番辛苦,终于把项目搞定,在这里简单的自己的学习的过程记录一下,供入门的兄弟参考一下。 ? 一、rest简介: REST 是英文 Representational State Transfer 的缩写,有中文翻译为“具象状态传输”。REST 这个术语是由 Roy Fielding 在他的博士论文《 Architectural Styles and the Design of Network-based Software Architectures 》中提出的。REST 并非标准,而是一种开发 Web 应用的架构风格,可以将其理解为一种设计模式。REST 基于 HTTP,URI,以及 XML 这些现有的广泛流行的协议和标准,伴随着 REST,HTTP 协议得到了更加正确的使用。 ? 二、实现方式: Apache 的 CXF 以及 JBoss 的 RESTEasy(待续) (RESTEasy)http://www.jboss.org/file- access/default/members/resteasy/freezone/docs/1.1.GA/userguide/html_single/index.html ? 三、入门实例:
http://developer.51cto.com/art/200912/172185.htm(网上很多)
涉及原理及数据绑定:http://www.ibm.com/developerworks/cn/java/j-lo-jaxrs/??? 一篇不错的文章
jersey实例 Bookkeeping实例 这是两个不错的例子,大家有时间好好看看 ? 四、看了上面的文章以后,感觉项目中只用到了rest其中的一小部分,还有好多东西值得认真学习一下,以便用到以后的项目中。 下面是自己感觉在上面例子中没有提到的一些东西,贴出来供大家参考。呵,仅一家之言啊,有不对的希望大家能提醒小弟:) 调用POST方法时传入实体类,并返回实例类的的写法,以及数据绑定、path映射多个参数。 客户端: BankInterfaceAgent.java
GenericType<VirementResultInfo> generic = new GenericType<VirementResultInfo>() {};//定义返回的类型(加入泛型) 。。。。。。。
服务器端: BankServiceAgent.java //注意:数据传输时的序列化与反序列化由实例类绑定JAXBELEMENT实现,实体类必须绑定(在实例类中加入@XmlRootElement) @Path("/virement/{clientSystemNo},{encryptKey},{isEncrypted},{bankCode}/") //路径和参数,注意格式(符合jax- rs311规范) ? ? 五、参考文档: jsr311 API:https://jsr311.dev.java.net/nonav/releases/1.0/index.html jersey实例:https://jersey.dev.java.net/ 使用JAX-RS简化REST应用开发 Bookkeeping.rar实例在资源下载中。。。 好了,先写这么多,慢慢完善,大家如果有什么好的帖子要发上来啊,共同学习:) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |