关于spirngcloud中common模块的问题

发布于 2022-09-12 23:28:52 字数 110 浏览 6 评论 0

我看了一些开源的项目,他们的common中除了放一些通用的工具类或者项目公共的配置等
为什么不把所有的java bean放进去呢?这样不就可以在各个微服务中进行使用了吗。求解,这个是有什么别的原因吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

零度° 2022-09-19 23:28:52

第一个问题:
不能把所有的 bean 都放进去。

只能放一些模块中通用的 bean,比如 spring boot 统一的序列化配置。

如果各种类型的 bean 放多了,会导致模块之间关联性太强,这样修改一个模块势必会影响另一个模块,所以需要严格控制其中的 bean,并且不能随意修改。

第二个问题:
common 顾名思义,是工具类,放 bean 并不合适。

开源项目初始化 bean 的方式是通过 autoconfigure 单独的依赖设置的,应该是 spring boot 的规范。

也就是说一个 spring 体系的开源项目可以大致分为下面三个部分:

  1. 开源项目需要使用的 common 模块,存放自己独有的工具类,不是必须的。
  2. 开源项目的核心部分,主要功能实现的地方,可能不止一个 jar。
  3. 开源项目的 autoconfigure,一般只有一个,帮助实例化核心功能的 bean。
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文