Skip to main content

工程结构

模板工程中,默认有4个大模块

  • infrastructure 基础设施层
  • core 核心层(领域层+应用层)
  • interfaces 用户接口层
    • rest-tenant 租户/企业后台接口
    • rest-boss 运营接口
  • serve 服务入口
对象名称写法说明
dto数据传输对象XXXDTO,XXXCmd,XXXQuery用于返回值对象,或者跨领域传输对象
entity领域实体对象XXX领域实体对象(充血模型),内部包含简单的业务逻辑
po持久层对象XXXPO与数据库表,字段1-1映射
ro请求对象XXXRO用于接受请求端传的body对象,一般来说dto 就可以接收请求对象,考虑到数据验证,swagger展示等情况,单独用ro对象来接收,例如,ArticleCreateRO,ArticleUpdateRO,ArticleQueryRO
vo视图对象XXXVO用于返回值
criteria条件对象xxxCriteria用封装给ORM的查询参数

这里主要介绍dto,entity,po,ro,vo,query,criteria这几个对象概念

  • dto (Data Transfer Object) 数据传输对象
  • entity 领域实体对象
  • po (Persistent Object)持久层对象
  • ro (Request Object) 请求对象
  • vo (View Object) 视图对象
  • criteria 条件对象

原则上来说 只有vo 或者 dto 可以作为返回值对象,从减少工作量的角度,我们放宽约束,如果是表级查询可以直接返回po。entity 不能作为返回对象,因为entity 不是单纯的数据模型,里面还有业务逻辑。