项目架构和模块分层

一。领域:就是业务的意思,就是将业务抽象成实体、对象来操作。我理解就是将实体类进行各种划分,分不同的场合来用,作用是思路更清晰,按需来取。

领域模型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:专门处理对外的接口。

关于层次,每个公司都不一样,也就是说一个架构师设计出来一个样。。