jersey集成spring相对来讲比较简单,须要注意的几点是:git
一、引入maven依赖jersey-spring,其中包含了spring的相关依赖,若是和项目中所使用的spring版本相冲突,能够经过exclusions清除掉。web
二、确保jersey资源类所在的包路径,能被spring扫描到,即spring配置中的<context:component-scan base-package="" />。spring
三、确保jersey资源类打上注解@Component,这样能够注入spring容器的对象实例。app
四、在web.xml中配置com.sun.jersey.spi.spring.container.servlet.SpringServlet。maven
五、如何测试,请看JerseyTest
测试
项目源码参考
ui
jersey-spring的maven依赖,去除了spring相关依赖。具体配置,可进入上面的"项目源码参考"。url
<!-- jersey-spring: 包含了jersey-servlet/jersey-server/jersey-core等,同时还包含了spring相关依赖。 --> <dependency> <groupId>com.sun.jersey.contribs</groupId> <artifactId>jersey-spring</artifactId> <version>1.19</version> <exclusions> <exclusion> <artifactId>spring-core</artifactId> <groupId>org.springframework</groupId> </exclusion> <exclusion> <artifactId>spring-beans</artifactId> <groupId>org.springframework</groupId> </exclusion> <exclusion> <artifactId>spring-context</artifactId> <groupId>org.springframework</groupId> </exclusion> <exclusion> <artifactId>spring-web</artifactId> <groupId>org.springframework</groupId> </exclusion> <exclusion> <artifactId>spring-aop</artifactId> <groupId>org.springframework</groupId> </exclusion> </exclusions> </dependency>
web.xml.net
<servlet> <servlet-name>jerseySpring</servlet-name> <servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class> <load-on-startup>2</load-on-startup> </servlet> <servlet-mapping> <servlet-name>jerseySpring</servlet-name> <url-pattern>/jersey/*</url-pattern> </servlet-mapping>