javascript
将Jersey与Spring整合
在我的業(yè)余時(shí)間里,我目前正在嘗試恢復(fù)以前從未退出私有測(cè)試版的一個(gè)私有項(xiàng)目(一旦發(fā)布,我會(huì)寫更多的內(nèi)容)。 該項(xiàng)目包含一個(gè)JavaScript富客戶端界面以及在Google AppEngine上托管的Java服務(wù)器“后端”。 我目前正在完全重寫它,因此我從在服務(wù)器端創(chuàng)建Jersey REST Api干凈地開始,它以JSON公開數(shù)據(jù)。 此類在澤西島暴露的類的示例如下:
@Path("/sourcecodeitems") public class SourceCodeItemGateway { ...@GET@Produces(MediaType.APPLICATION_JSON)public List<sourcecodeitemdto> index(){ArrayList<sourcecodeitemdto> listOfItems = new ArrayList<sourcecodeitemdto>();for (SourceCodeItem item : sourceCodeItems) {listOfItems.add(new SourceCodeItemDTO(item));}return listOfItems;}... }相應(yīng)的web.config如下所示:
<web-app version="2.5" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"><servlet><servlet-name>Jersey Web Application</servlet-name><servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class><init-param><param-name>com.sun.jersey.config.property.packages</param-name><param-value>com.jsdev.myproject.service</param-value></init-param><init-param><param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name><param-value>true</param-value></init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>Jersey Web Application</servlet-name><url-pattern>/backend/*</url-pattern></servlet-mapping><welcome-file-list><welcome-file>welcome.jsp</welcome-file></welcome-file-list> </web-app>第7行指示您的Jersey資源所在的軟件包, 第10行激活您的POJO到Json的自動(dòng)映射功能。
與Spring整合
為了將Jersey與Spring集成,您首先需要包括Jersey軟件包下載隨附的jersey-spring- <version> .jar 。 將其包括在您的構(gòu)建路徑中。 然后,您可以使用Spring批注(@Component)配置Jersey資源(上面的SourceCodeItemGateway),或像…一樣基于xml進(jìn)行配置。
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:schemalocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean class="com.jsdev.mydevbook.service.SourceCodeItemGateway" name="sourceCodeItemGateway"><property name="pingService" ref="pingService"></property></bean><bean class="com.jsdev.myproject.service.PingService" id="pingService"></bean></beans>第3行顯示了Jersey資源類的bean配置以及將由Spring管理和注入的已配置依賴項(xiàng)(PingService)。 最后,您需要調(diào)整web.config文件以使其在帶有Jersey的Spring中正確掛接:
<servlet><servlet-name>jersey-servlet</servlet-name><servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class><init-param><param-name>com.sun.jersey.config.property.packages</param-name><param-value>com.jsdev.myproject.service</param-value></init-param><init-param><param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name><param-value>true</param-value></init-param><load-on-startup>1</load-on-startup> </servlet><servlet-mapping><servlet-name>jersey-servlet</servlet-name><url-pattern>/backend/*</url-pattern> </servlet-mapping><context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/spring-service.xml/WEB-INF/spring-data.xml</param-value> </context-param>請(qǐng)注意,在第3行中 ,我們?nèi)绾螌?shí)例化Jersey SpringServlet。 第23和24行顯示了Spring配置文件的路徑。 先前顯示的bean配置是spring-service.xml的摘錄。 spring-data.xml應(yīng)該包含與數(shù)據(jù)訪問相關(guān)的所有內(nèi)容。
參考:在Juri Strumpflohner的TechBlog上 ,我們的JCG合作伙伴 Juri Strumpflohner 將Jersey與Spring集成 在一起 。
相關(guān)文章 :
- Spring3 RESTful Web服務(wù)
- Tomcat 7 –Eclipse和Maven項(xiàng)目上的帶有RESTeasy JAX-RS的RESTful Web服務(wù)
- Java Code Geeks Andygene Web原型
- Spring MVC開發(fā)–快速教程
- jqGrid,REST,AJAX和Spring MVC集成
翻譯自: https://www.javacodegeeks.com/2011/08/integrating-jersey-with-spring.html
總結(jié)
以上是生活随笔為你收集整理的将Jersey与Spring整合的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux的安装包格式(linux的安装
- 下一篇: linux安装包安装命令(linux安装