多模块

一个大一点的项目,不能只写在一个模块里面。主要是一个项目好几个人写。
模块之间是引用关系。
比如A模块依赖了a,b,c,d包,B模块依赖A模块,实际上就是把A模块打包成jar包,B模块依赖这个jar包。B模块也可以使用A模块依赖的a,b,c,d包。
怎么依赖自己写的模块呢,maven,pom.xml的依赖就可以了,B模块依赖A模块

  1. <dependency>
  2. <groupId>A模块的包名</groupId>
  3. <artifactId>A模块名</artifactId>
  4. <version>A模块的版本信息</version>
  5. </dependency>

java的开发和C#的开发很像。java的模块就类似于C#项目,比如类库项目,模块之间相互依赖,类库之间相互引用。
每个模块的功能应该各司其职。

通过包来划分具体职责

模块分了就要分包,每个包下的东西作用职责单一。
高内聚低耦合。
比如下面这种,很多项目的包都写在了不同的模块,分得更细了。
image.png

  • annotation:放自定义的注解的
  • aspect:放切面的,比如日志
  • config:放配置文件的
  • const:放常量类的地方
  • domain:放pojo的地方,do,vo,dto等
  • enum:放枚举的
  • exception:放异常的
  • handler:放一些处理操作的,比如什么全局异常处理啊,验证用户处理等
  • runner:这里放的是一些程序预启动执行的东西,就是springboot初始化执行的东西
  • task:放一些定时任务等
  • utils:放工具类