domain文件夹

在 ruoyi-vue 的 common/core/domain 文件夹里,存放的是 领域模型类(Domain Objects) ,也就是 Java Bean 或 POJO,用于在业务逻辑中封装数据。

简单说:domain 文件夹就是 存放数据载体的地方,通常包括以下几类:


1️⃣ BaseEntity(基础实体类)

  • 定义了数据库表共有字段,比如:

    • createBy(创建人)
    • createTime(创建时间)
    • updateBy(更新人)
    • updateTime(更新时间)
    • remark(备注)
  • 所有实体类可以继承它,减少重复代码。

例子:

java 复制代码
public class BaseEntity {
    private String createBy;
    private Date createTime;
    private String updateBy;
    private Date updateTime;
    private String remark;
    // getter setter ...
}

2️⃣ BaseDTO 或具体 DTO 类

  • DTO = Data Transfer Object(数据传输对象)
  • 用于前后端交互,通常比实体类更精简,只包含需要传输的数据。
  • 例如:
java 复制代码
public class UserDTO {
    private String username;
    private String email;
    private List<String> roles;
    // getter setter ...
}

3️⃣ AjaxResult / R 类

  • 封装接口响应数据,统一返回格式。

  • 包含:

    • code(状态码)
    • msg(消息)
    • data(返回数据)
  • 方便前端统一处理响应。

java 复制代码
public class AjaxResult {
    private int code;
    private String msg;
    private Object data;
    // 静态方法构建成功或失败响应
}

4️⃣ LoginUser 类

  • 封装当前登录用户信息,例如:

    • 用户ID、用户名、角色列表、权限列表等
  • 用于后端安全框架(如 Spring Security)中获取用户信息。

java 复制代码
public class LoginUser {
    private Long userId;
    private String username;
    private List<String> roles;
    private List<String> permissions;
}

5️⃣ 总结

domain 文件夹就是 核心数据对象层,作用是:

  1. 封装数据库实体(Entity)
  2. 封装前后端交互的数据(DTO)
  3. 封装统一返回格式(AjaxResult、R)
  4. 封装用户会话信息(LoginUser)

通俗理解:controller 用 domain 里的类来收发数据。


我可以帮你画一张 controller ↔ domain ↔ service ↔ mapper 数据流图 ,直观展示 domain 的作用。

你希望我画吗?

相关推荐
威哥爱编程1 分钟前
【AI全栈12-11】Spring Boot 把 AI 接口真正上线扛量:限流 / 降级 / 可观测
java·spring boot·后端
小蒜学长1 分钟前
基于SpringBoot+uni-app的闪洁家政系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·uni-app·家政服务
敲代码的彭于晏17 分钟前
2026 K8s 零基础入门:手把手教你一步步搭建 Kubernetes 集群
java·运维·全栈
希洛兔22 分钟前
状态模式详解:让对象随内部状态自动改变行为
java·设计模式·状态模式
需要82626 分钟前
Spring Boot 启动流程:run() 里到底发生了什么
java·spring boot·后端
云絮.28 分钟前
Mybatis(一)
java·数据库·mybatis
希洛兔2 小时前
里氏替换原则详解:子类必须能透明替换基类(含继承风险演示 + 正确重构 + JDK 案例)
java·里氏替换原则
kevien_G12 小时前
微服务之OpenFeign最佳实践
java·微服务·架构
江湖有缘2 小时前
Docker实战 | 使用Docker部署ShipShipShip自托管产品更新与功能投票系统
java·linux·服务器·docker
范什么特西2 小时前
亲和路由11
java