RESTful java with JAX-RS

来源:互联网 发布:mac pro价格 编辑:程序博客网 时间:2024/06/04 18:11

前言部分

REST作为一种架构风格,它定义了一个约束集合,以达到在设计分布式系统时满足松耦合和水平扩展的优点。通过使用web的标准特性诸如URI、HTTP、XML以及JSON同时遵循REST的相关约束,从而构造RESTful风格的web 服务。这些服务成为万维网的组成部分,同时可以使用多年的万维网的经验来满足客户端的需求。

JAX-RS是一种Java语言定义的REST方面的接口和约束,目的是更简单和直观的方式通过Java开发REST风格的web服务。这个规范在出台之前,已经存在的开发web服务的应用接口存在以下缺点:

一,要么太底层,开发者往往需要重复做相同的工作,比如URI解析和内容协商等容易出错的工作。

二,要么层次太高,虽然能遵循某一特定的模式很容易的构建服务,但再处理更多通用的问题方面不灵活。

JSR 311(Java Specification Request 311) 在2007年1月份由JCP(Java Community Process)发起,在2月份一致通过。其专家组在2007年4月开始设计一款灵活、易用且能鼓励开发者遵循REST风格的API。2008年10月完成了相关API的设计,该API被广泛地采用,并且有多种实现,相关实现者的经验和用户的反馈促成了对规范的优化和澄清歧义。

JAX-RS是相关Java API的最近产物,其旨在使用Java注解减少需要继承的基类的使用,同时减少配置文件的使用。注解可用于指定客户端请求和Java类中方法的对应关系,以及请求数据和Java函数参数的关系。注解同时用于提供静态的元数据信息,从而用于说明构造的响应消息的特性。JAX-RS也提供了更多易用的类和接口用于访问请求数据和定制响应。

Bill Burke是专家组的一员,他曾带领一个团队开发了RESTEasy(JSR 311的一个实现)。他对专家组的贡献数不胜数,其中包括注解继承的约束、正则表达式应用于URI匹配、对cookies和格式数据的注解的支持、对流输出的支持。

这本书,RESTful Java with JAX-RS提供了怎么使用相关API同时遵循REST架构风格支持的深入解释。我期待你们能够喜欢这本书、喜欢JAX-RS。

                                                                                                                                                                                            —Marc Hadley
                                                                                                                                                                                              JAX-RS Specification Lead
                                                                                                                                                                                              Sun Microsystems, Inc.
                                                                                                                                                                                              Burlington, MA