技术架构Spring boot

MVC和领域模型

2019-02-26  本文已影响56人  neo_ng

outline

MVC

Model封装了你的应用数据、应用流程和业务逻辑。-Model被称为领域模型
View从Model获取数据并格式化数据以进行显示。
Controller控制程序流程,接收输入,并把它们传递给Model和View。


微信图片_20190226104045.jpg

controller: 单例
Spring中默认单例:

领域模型:

image

实体类的分类:

1.展示层(VO-View/Value Object,视图对/业务对象):
2.服务层(DTO-Data Transfer Object,数据传输对象)
3.领域层(DO-Domain Object,领域对象)
4.持久层(PO-Persisent Object,持久对象)
各种实体类用于不同业务层次间的交互,并会在层次内实现实体类之间的转化。

领域模型中实体类的含义及作用

实体类 含义及作用
VO 代表展示层需要显示的数据,每一个属性都一一对应当前业务逻辑所需要的数据的名称。
DTO 代表服务层需要接收的数据和返回的数据
DO 从现实世界中抽象出来的有形或无形的业务实体
PO 物理数据的对象表示。PO的属性是跟数据库表的字段一一对应的。PO对象需要实现序列化接口由一组属性和属性的get和set方法组成

领域模型中实体类的命名方式:

实体类 命名方式 生命周期
VO 以相应字符串结尾,如*VO.Java
DTO 与他的用途有关,如写成*Query.java--表示一个查询条件
DO
PO 只能存活在一个数据库连接中,断开连接即被销毁

DO和PO在绝大部分情况下是一一对应的 DO具有业务方法

业务分层:

1.视图层(VIEW+ACTION)
2.服务层(SERVICE)
3.持久层(DAO-data access object,数据库访问层):具体到对于某个表、某个实体的增删改查

dao: 每个DAO都要包含一个不同的Connection对象实例,
请求在不同的线程中处理
每个线程走的逻辑相同,但并没有用到共享的数据,所以可以用单例模式~
线程拥有自己的栈空间--方法
单实例多线程

BO:business object 业务对象,封装业务逻辑的java对象,通过调用DAO方法,结合PO,VO进行业务操作。

上一篇下一篇

猜你喜欢

热点阅读