将春豆注入泽西2的最佳方法是什么?泽西岛似乎不支持这种本土化。
将2个框架连接在一起需要什么?在pom.xml和web.xml中?
答案 0 :(得分:15)
泽西岛2.3现在有弹簧支持:
https://jersey.github.io/documentation/latest/user-guide.html#spring
如文件中所述
Spring扩展模块配置基于注释
所以你必须告诉spring扫描你的类路径,例如:
<context:component-scan base-package="my.package.to.resources">
并使用spring注释注释您的资源类(我建议使用@Component,然后指定jersey资源范围@ Singleton / @ PerLookup / @RequestScoped)
@Component
@Singleton
@Path("example")
public class Example {
//Spring beans can't be injected directly into JAX-RS classes by using Spring XML configuration
@Autowired
private MyOtherBean myOtherBean;
@GET @Path("hello")
public String hello() {
return myOtherBean.hello();
}
}
答案 1 :(得分:11)
截至2013年6月,Jersey 2.0尚未获得官方Spring支持。有两种选择:
另见:
http://jersey.576304.n2.nabble.com/Spring-framework-support-for-Jersey-2-td7580673.html
编辑:泽西岛2.3现在有弹簧支持,见下面的Fabio的答案
答案 2 :(得分:-7)
您应该能够注释球衣组件,然后使用注释注入豆子。
@Service //(or @Component)
public class MyJerseyService {
@Autowired
private MyObj mySpringBean
}