小型依赖注入Java

rsl1atfo  于 2023-08-01  发布在  Java
关注(0)|答案(7)|浏览(148)

我正在寻找一个非常轻量级的Java依赖注入框架。具有最小可能的依赖性和最少的特征。
就沿着下面这样:接收一个ClassClass es,示例化它们,然后自动连接所有对象。

pw9qyyiw

pw9qyyiw1#

我推荐使用Spring,因为当只使用核心包时,它可以提供很小的占用空间。
如果您认为Spring是矫枉过正的,那么可能是PicoContainerguice

omjgkv6w

omjgkv6w3#

Silk DI是关于120K的单个jar文件,没有进一步的运行时依赖关系。它有一个像guice一样流畅的活页夹界面,但更灵活,允许删除你不喜欢的功能。例如,CollectionList注入可以添加到 * 一个衬管 * 中。

kxe2p93d

kxe2p93d4#

我已经尝试MentaContainer不到一个星期了,我对它干净直接的API感到满意。它没有使用XML或Annotations进行设置,而是使用了一个流畅的API,几乎像DSL一样,对我来说就像天堂一样,因为我正在使用它来构建一个支持IoC的小型Web容器。它为组件提供了一个THREAD作用域,该作用域非常适合Web容器的REQUEST作用域。它非常轻,所以它可能是你所需要的。

m1m5dgzv

m1m5dgzv5#

看看谷歌开发的dagger2(从square的dagger1派生而来),只有17kb的jar文件。

  • 与其说是样板不如说是伪装
  • 注入的编译时验证(带有显式错误消息)。这是Spring的东西,guice肯定没有)
  • 生成Facotries,编译后的代码。非常强大

dagger2 documentationdagger2 githubdagger2 examples

hmae6n7t

hmae6n7t6#

一定要查一下Guice我已经用了一年了,非常喜欢它。

mzsu5hc0

mzsu5hc07#

看看ActiveJ Inject
它是一个轻量级的依赖注入库。它针对性能进行了优化,并且不依赖于第三方。
它比Spring DI或Guice快得多,而且更轻。检查基准here

相关问题