官术网_书友最值得收藏!

Java EE7 - JAX-RS with Jersey

JAX-RS was born as a result of Java Specification Request (JSR) 311. As the official definition says, the JAX-RS is the Java API for RESTful web services. It's a specification that provides support in creating web services according to the REST architectural pattern. JAX-RS uses Java annotations, introduced in Java SE 5, to simplify the development and deployment of web service clients and endpoints. From version 1.1 on, JAX-RS is an official part of Java EE. A notable feature of being an official part of Java EE is that no configuration is necessary to start using JAX-RS.

Java EE 7 with JAX-RS 2.0 brings several useful features, which further simplify the development of microservices. One of the most important new features of JAX-RS 2.0 is the support for hypermedia following the HATEOAS principle of REST. Jersey, a library from Oracle, is probably the most widely known library, which implements this specification.

Jersey is the reference implementation for the JSR 311 specification.

The Jersey implementation provides a library to implement RESTful web services in a Java servlet container. On the server-side, Jersey provides a servlet implementation which scans predefined classes to identify RESTful resources. Jersey makes it a lot easier to write RESTful services. It abstracts away a lot of the low level coding you will need to do yourself otherwise. Using Jersey, you do it in a declarative way. The servlet, registered in your web.xml file, analyzes the incoming HTTP request and selects the correct class and method to respond to this request. It finds the proper method to execute by looking at the class and method level annotations. Annotated classes can reside in different packages, but you can instruct a Jersey servlet via the web.xml to scan certain packages for annotated classes.

JAX-RS supports the creation of XML and JSON via the Java Architecture for XML Binding (JAXB). The Jersey implementation also provides a client library to communicate with a RESTful web service.

As we have said before, we develop JAX-RS applications using Java annotations. It's easy and pleasant to work with. Let's describe those annotations now.

主站蜘蛛池模板: 元谋县| 沙田区| 新河县| 牟定县| 内江市| 太康县| 南安市| 恭城| 渝中区| 南丰县| 新绛县| 长武县| 肃南| 习水县| 茂名市| 新巴尔虎右旗| 闻喜县| 沅陵县| 天柱县| 古交市| 南靖县| 肇庆市| 双流县| 岚皋县| 大兴区| 东乌珠穆沁旗| 松潘县| 南溪县| 荥经县| 竹北市| 航空| 讷河市| 应城市| 靖西县| 邛崃市| 通山县| 随州市| 郎溪县| 额济纳旗| 麦盖提县| 桂平市|