英文:
Selective bean loading
问题
我有一个库和不同的应用程序使用该库。
问题在于每个应用程序仅使用库的一部分,而非全部。
那么我该如何避免在未使用的应用程序中加载这些“beans”呢?
非常感谢。
英文:
I have a library and different applications that use that library.
The problem comes that each application uses a part of the library, not all.
So how can I avoid loading the beans in the application that are not used?
thank you very much
答案1
得分: 0
我可以看到 3 个选项。
- spring profiles(https://www.baeldung.com/spring-profiles)- 将你的 bean 标记为由一个或另一个配置文件激活,并让应用程序定义要使用的配置文件。
- @ConditionalOnProperty(https://www.baeldung.com/spring-conditionalonproperty)- 将你的 bean 标记为由特定属性的特定值激活,并让应用程序定义这些属性。
- 更加复杂一些 - 将你的库转换为 Spring Boot Starter 并定义多个自动配置类:https://www.baeldung.com/spring-boot-starters
英文:
I can see 3 options.
- spring profiles (https://www.baeldung.com/spring-profiles) - mark your beans as activated by one or another profile and let applications define the profile to use.
- @ConditionalOnProperty (https://www.baeldung.com/spring-conditionalonproperty) - mark your beans as activated by specific value of specific property and let applications define those properties.
- A bit more complicated - turn your library into spring boot starter and define multiple auto configuration classes: https://www.baeldung.com/spring-boot-starters
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论