0. 序言
按照模块化的思想,java后端架构可以按照不同功能模块切割成一个大的工程,按照MVC的思想,每一个大的工程可以多个不同的子工程,今天和大家聊聊这个设计方法.本文中默认构建工具为Maven
1. parent
- 见名知义,这是每个功能模块最大的工程,也就是聚合父工程.打包方式是pom.他有2个作用
1. 统一其他模块使用jar包的版本
2. 方便构建,在maven生命周期中只需要操作一次,而不需要每个包都走一遍生命周期

2. manager
- MVC架构中的C,控制器层,打包方式war.他的主要作用是,接收客户端请求,并把请求交给service层处理,然后返回响应.

3. service
- 业务逻辑层,打包方式jar.他的主要作用是,处理controller层的请求,然后返回.

4. dao
- MVC架构中的M,持久层.打包方式jar.主要作用是建立java程序与数据库之间的映射(ORM).

5. common
- 公共包.打包方式jar.主要存放工程中用到的常量,工具类,异常等.

6. client
- 对外提供rpc服务的包.打包方式jar.注意这里只有接口,没有实现类,这样可以隐藏实现细节,也避免将业务逻辑暴露给调用方.

7.各个包之间的依赖关系
-
parent包含5个子moudles
-
client.jar 依赖 common.jar
-
dao.jar 依赖 client.jar
-
service.jar 依赖 dao.jar
-
manager.war 依赖 service.jar
8. 各个包大小关系
common < client < dao < service < manager < parent
评论