项目架构和模块分层
一。领域:就是业务的意思,就是将业务抽象成实体、对象来操作。我理解就是将实体类进行各种划分,分不同的场合来用,作用是思路更清晰,按需来取。
领域模型4个概念。下图是阿里巴巴命名规范。
1 po和eneity一样,和数据库实体一一对应的,包括字段名,类型。就是在写入数据库使用。常用
2 vo, 用于dto层和po之间的转化。当然它可能是多个do中截取一部分。可不使用
3.dto, 和前台要用的字段一一对应。显示层向服务层传数据使用,也有的是微服务之间服务接口的参数定义。常用。
4. do,业务的抽象,比如说业务是小狗,那么,它的do就是跑,叫之类的属性。不常用。
理解:vo:它的建立是要看dto->po,还是po->dto. 如果是从po->dto,可能是多个实体,我只需要每个实体中部分属性,那么vo就和dto相同了;如果是dto->po,我只需要dto中部分属性,那么 vo就和po相同了。
还有另外概念就是 分层。每个人分的架构名称都不一样,但是意思是相近的。
2.架构层次:
controller/servlet/action :请求转发用的,前台提出一个请求,它来交给对应的逻辑处理。
domain:实体类。我理解可以放以上的那4种。
interface :接口
dao: 数据库操作类。
api:专门处理对外的接口。
关于层次,每个公司都不一样,也就是说一个架构师设计出来一个样。。