普通Java项目中Spring Boot库的用法

Tho*_*ang 3 java spring spring-boot

我目前正在使用Spring Boot jar库中的可重用组件,例如

  • ldap
  • 电子邮件
  • 用Apache Kafka进行消息传递
  • 其余api的用法

目的:
我们公司的每个Java“用户/编码器”都应该能够(通过maven或其他方式)将该jar放入一个项目中,并使用可重用的组件,而不是一遍又一遍地编码所有东西。

通过REST为该问题构建微服务不是我们的替代选择。

我的问题是:
我可以在任何普通的Java项目中重用这个Spring Boot jar库吗?

Beeing喜欢,我可以将这个jar库“放入”一个Java项目,并在我的“非Spring Boot”普通Java项目中将该库的Spring Boot服务连接起来吗?

注意/已编辑:
我已将Spring Boot用作项目模板(spring-boot-starter-parent)。
我像LdapTemplate手动配置模板一样,不要让Spring Boot发挥作用。

编辑
就Spring Boot / Spring项目中的重用而言,一切都很好。我已经做到了。

我对该库的目标可能是每个Java“用户”都可以使用该库,如下所示:
final SuperCoolLibary scl = new SuperCoolLibrary(); final boolean exists = scl.searchForLdapUser("tlang");

所以可能
会有另一个问题:将这个库切换到新的Java Jigsaw模块基础结构会更好吗?

the*_*NOD 5

  1. 编写自己的Spring-Boot-Auto-Starter。可以在以下位置找到指南:https : //docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-auto-configuration.html
  2. 这样,只需将库添加为依赖项就可以在每个spring boot项目中使用您的库(这意味着jar必须位于您的类路径中)。
  3. 如果您的Java应用程序不使用SpringContext,则无法通过Spring将这些服务“连接”到普通的Java应用程序中。