多模块
一个大一点的项目,不能只写在一个模块里面。主要是一个项目好几个人写。
模块之间是引用关系。
比如A模块依赖了a,b,c,d包,B模块依赖A模块,实际上就是把A模块打包成jar包,B模块依赖这个jar包。B模块也可以使用A模块依赖的a,b,c,d包。
怎么依赖自己写的模块呢,maven,pom.xml的依赖就可以了,B模块依赖A模块
<dependency>
<groupId>A模块的包名</groupId>
<artifactId>A模块名</artifactId>
<version>A模块的版本信息</version>
</dependency>
java的开发和C#的开发很像。java的模块就类似于C#项目,比如类库项目,模块之间相互依赖,类库之间相互引用。
每个模块的功能应该各司其职。
通过包来划分具体职责
模块分了就要分包,每个包下的东西作用职责单一。
高内聚低耦合。
比如下面这种,很多项目的包都写在了不同的模块,分得更细了。
- annotation:放自定义的注解的
- aspect:放切面的,比如日志
- config:放配置文件的
- const:放常量类的地方
- domain:放pojo的地方,do,vo,dto等
- enum:放枚举的
- exception:放异常的
- handler:放一些处理操作的,比如什么全局异常处理啊,验证用户处理等
- runner:这里放的是一些程序预启动执行的东西,就是springboot初始化执行的东西
- task:放一些定时任务等
- utils:放工具类