Kotlin对象可以用作Spring bean吗?



Kotlin允许定义单例对象。在Spring或CDI等依赖注入(DI)框架中,bean的生命周期可以定义为单例。因此,将Kotlin对象声明为bean以便在DI容器中使用似乎是明智的。

是否真的有可能声明一个Kotlin对象,例如,作为e Spring@Component?如果不是,为什么不呢?

它似乎工作得很好(我不明白为什么它不工作)。

话虽如此,我不认为"单例"的定义在哪里。事实上,kotlin和Spring的"single"是一样的。object似乎是在每个classloader 1个的基础上定义singleton,而spring的"singleton"是在每个applicationcontext 1个的基础上定义的。

大多数应用程序可能只使用其中的一个,所以它看起来是一样的,但如果你的应用程序使用两个或两个以上的ClassLoader或ApplicationContext,它似乎会最终成为一个混乱。

我的问题是:"你希望通过使用对象而不是类来获得什么?"我真的看不出有什么好处(但我可能错了),所以偏离每个人都使用的惯例似乎是个坏主意。

相关内容

  • 没有找到相关文章

最新更新