本文系个人讲解,欢迎讨论,不喜勿喷。
一级目录
本人喜欢将项目拆解为认证、系统服务、多个功能模块来进行代码分区。认证目录主要保存需要登录的系统的用户、机构、应用三者身份确认和接口级别的权限验证的代码;系统服务目录主要保存各个模块都可以使用的一些工具代码、还有一些轮子的配置代码等非业务要求代码;多个功能模块:每个独立的功能模块可以划分成一个目录里面保存和这个功能相关的所有代码。
二级目录
功能模块又可以继续划分:api、biz、data、repository四个目录,api:主要是利用biz和data提供的业务服务和数据服务实现前端人员需要接口;biz:按照领域驱动的原理来进行设计,提供模块的业务服务实现;data:业务模块的数据查询服务;repository:实现biz需要的业务对象的数据仓库,同时提供data数据查询服务需要的数据库查询接口和实现。
api目录
此目录主要包括:controller、vo的相关代码。
biz目录
此目录主要包括:domain、service、dto、repository等四个子目录。具体作用参考领域驱动模式的相关说明。
data目录
此目录的子目录一般只有service;也就是数据查询服务的代码。根据需求可以增设dto子目录。
repository目录
这个目录里面需要根据数据持久层的技术选定来确定,一般包含:mapper、entity、impl、dto等目录。impl目录主要放置biz层的业务对象仓库的具体实现代码。其他子目录具体作用可以mybaties框架的使用。
项目整体目录

目录设计的目的
1、保证团队的员工的代码风格的规范性,可读性、业务扩展的安全性;
2、引入领域驱动模型规划业务代码,增加代码对业务扩展与变更的适应能力,为后续产品提炼提供核心业务支撑;
3、减少新员工的学习难度,和员工工作的顺利交接;
4、方便代码质量检查,为团队级别代码质量管控提供支撑;
5、探索业务功能代码的自动生成模式;只有代码简单,机器才可以自动生成;


1340

被折叠的 条评论
为什么被折叠?



