将春豆注入 Jersey 2 的最佳方法是什么?泽西岛似乎本身不支持这一点。
将这两个框架连接在一起需要什么?在 pom.xml 和 web.xml 中?
Jersey 2.3 现在有 spring 支持:
https://jersey.github.io/documentation/latest/user-guide.html#spring
如文档中所述
Spring扩展模块配置基于注解
所以你必须告诉 spring 扫描你的类路径,例如:
<context:component-scan base-package="my.package.to.resources">
并使用弹簧注释来注释您的资源类(我建议使用@Component,然后指定球衣资源范围 @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();
}
}
截至 2013 年 6 月,Jersey 2.0 没有官方的 Spring 支持。有两种选择:
也可以看看:
http://jersey.576304.n2.nabble.com/Spring-framework-support-for-Jersey-2-td7580673.html
编辑:Jersey 2.3 现在有弹簧支持,请参阅下面 Fabio 的回答
您应该能够注释球衣组件,然后使用注释来注入 bean。
@Service //(or @Component)
public class MyJerseyService {
@Autowired
private MyObj mySpringBean
}