带有 JAX-RS 的 Guice
Guice with JAX-RS
我使用 Guice 作为我的依赖注入框架。我想要一些我可以添加的东西,这将使创建 REST 服务更容易。
我看过 guice-servlet,它在将路径定向到 HTTP servlet 方面效果很好,但这似乎就是它所做的一切,我期待像注释语法这样的 JAX-RS 可以工作,但它没有' t.
我没有实际使用过 JAX-RS,我用谷歌搜索了一下,看起来 Jersey 是这个的参考实现,但看起来它使用自己的依赖注入框架并且不能很好地与 Guice 一起工作。此外,它还有 5+MB 的依赖项,这对于我所追求的来说似乎很多。
Guice 的设计方式是否不适用于 JAX-RS,如果是,我还应该做什么?
我认为 guice-servlet 模块可能误导了您。 Guice 是一个 DI 框架。时期。 guice-servlet 模块的真正目标不是提供 servlet 和过滤器的快捷方式声明,而是支持特殊范围 request 和 会话。那些漂亮的快捷方式声明是语法糖。
在 Java 中选择 JAX-RS 实现有点不可能。您有多种选择(Jersey、Resteasy、Spring...)。如果你要满 JavaEE 那么你不必选择。您只需使用开箱即用的注释(和 DI)。
如果您没有使用 JavaEE 服务器(只是像 Tomcat 这样的 Web 服务器或 Android 应用程序之类的任何其他奇特的东西),那么您必须选择您的实现。如果您也使用 DI(我推荐),那么还需要做出一个决定。
所以你没有使用 JavaEE,你想使用 JAX-RS 和依赖注入实现一些 REST API。您做了一些研究,最终选择了 Jersey 和 Guice。不错的选择,我在最近的项目中也选择了那些。是的,Jersey 的依赖图有点臃肿。我知道,它可能会更好。
现在你的问题是如何让它协同工作,因为 Jersey 使用它自己的 DI 框架 (HK2),这是一件坏事。
您在 SO 上有很多关于 Jersey-Guice 集成的参考。最好的选择是 Guice HK2 bridge.
什么?您想直接参考 SO 吗?没问题,这是一个很好的。不要忘记赞成答案。 ;-)
我使用 Guice 作为我的依赖注入框架。我想要一些我可以添加的东西,这将使创建 REST 服务更容易。
我看过 guice-servlet,它在将路径定向到 HTTP servlet 方面效果很好,但这似乎就是它所做的一切,我期待像注释语法这样的 JAX-RS 可以工作,但它没有' t.
我没有实际使用过 JAX-RS,我用谷歌搜索了一下,看起来 Jersey 是这个的参考实现,但看起来它使用自己的依赖注入框架并且不能很好地与 Guice 一起工作。此外,它还有 5+MB 的依赖项,这对于我所追求的来说似乎很多。
Guice 的设计方式是否不适用于 JAX-RS,如果是,我还应该做什么?
我认为 guice-servlet 模块可能误导了您。 Guice 是一个 DI 框架。时期。 guice-servlet 模块的真正目标不是提供 servlet 和过滤器的快捷方式声明,而是支持特殊范围 request 和 会话。那些漂亮的快捷方式声明是语法糖。
在 Java 中选择 JAX-RS 实现有点不可能。您有多种选择(Jersey、Resteasy、Spring...)。如果你要满 JavaEE 那么你不必选择。您只需使用开箱即用的注释(和 DI)。
如果您没有使用 JavaEE 服务器(只是像 Tomcat 这样的 Web 服务器或 Android 应用程序之类的任何其他奇特的东西),那么您必须选择您的实现。如果您也使用 DI(我推荐),那么还需要做出一个决定。
所以你没有使用 JavaEE,你想使用 JAX-RS 和依赖注入实现一些 REST API。您做了一些研究,最终选择了 Jersey 和 Guice。不错的选择,我在最近的项目中也选择了那些。是的,Jersey 的依赖图有点臃肿。我知道,它可能会更好。
现在你的问题是如何让它协同工作,因为 Jersey 使用它自己的 DI 框架 (HK2),这是一件坏事。
您在 SO 上有很多关于 Jersey-Guice 集成的参考。最好的选择是 Guice HK2 bridge.
什么?您想直接参考 SO 吗?没问题,这是一个很好的。不要忘记赞成答案。 ;-)