规约原文
【参考】分层领域模型规约:
DO(Data Object):此对象与数据库表结构一一对应,通过 DAO 层向上传输数据源对象。
DTO(Data Transfer Object):数据传输对象,Service 或 Manager 向外传输的对象。
BO(Business Object):业务对象,由 Service 层输出的封装业务逻辑的对象。
AO(Application Object):应用对象,在 Web 层与 Service 层之间抽象的复用对象模型,
极为贴近展示层,复用度不高。
VO(View Object):显示层对象,通常是 Web 向模板渲染引擎层传输的对象。
Query:数据查询对象,各层接收上层的查询请求。注意超过 2 个参数的查询封装,禁止
使用 Map 类来传输。
问题描述
假设我的数据库实体类是DO,我在Mybatis中做联表查询。用到了 这些标签来做 一对多、多对一的Map关系。那么resultMap的 resultType要指定什么类呢?? 直接用DO的话,DO在原则上要和数据库字段一一对应,不能更改。 用DTO的话,DTO又只能在Service、Manager层。。 我就不知道用什么类了
修改建议
官方能不能针对规约原文的领域对象模型。做一个简单的Demo出来。。 寥寥几句话让人很困惑啊!
2条答案
按热度按时间wbrvyc0a1#
我理解应该用BO 。biz层object的意思,关联查询结果,更接近于业务层
ajsxfq5m2#
我的理解是DO应该和sql里的字段一一对应即可
但是因为DO一般是建表时自动生成的,无法随意更改
所以使用了DTO来接受查表的数据(后续也可以随意增删)