潜水阿宝 2023-04-20 10:47 采纳率: 57.1%
浏览 20
已结题

Java项目模块应该怎么设计拆分

问题一:单体架构(一个工程)的多模块开发,对于模块拆分是怎么拆分的?是按照业务模块拆分吗?比如说订单模块,用户模块,然后每个模块有自己的mapper,pojo,service,controller。还是根据mapper,pojo,service,controller进行拆分,然后不对业务进行拆分?还是一些其他的拆分方式?
问题二:maven的聚合工程和继承工程以及版本管理,是写在一个模块里面,还是分开模块编写?

  • 写回答

3条回答 默认 最新

  • 守时间的孤岛 2023-04-20 10:57
    关注

    该回答引用chatgpt:
    问题一:对于单体架构的多模块开发,可以根据业务模块拆分或者根据功能模块拆分。如果根据业务模块拆分,可以按照不同的业务逻辑来拆分模块,比如订单模块、用户模块等。如果根据功能模块拆分,可以按照不同的功能来拆分模块,比如数据访问模块、服务模块等。具体拆分方式应该根据项目需求和实际情况来定。

    无论按照哪种方式进行模块拆分,每个模块都应该有自己的mapper、pojo、service和controller。这样可以提高模块的内聚性,降低模块之间的耦合度,使得模块之间的协作更加清晰明了。

    问题二:对于maven的聚合工程和继承工程以及版本管理,可以根据实际情况来决定是否将它们写在同一个模块中。如果聚合工程、继承工程和版本管理的功能都比较简单,可以将它们写在同一个模块中。如果它们的功能比较复杂,可以将它们分别写在不同的模块中,这样可以提高项目的可读性和可维护性。

    在实际项目中,通常会使用一个父工程来管理所有的子模块,父工程中包含聚合工程、继承工程和版本管理等信息。每个子模块都可以继承父工程,这样可以避免在每个模块中都重复定义聚合工程、继承工程和版本管理等信息。这种方式可以大大简化项目的管理和维护。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月28日
  • 已采纳回答 4月20日
  • 创建了问题 4月20日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效