domain文件夹

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

简单说: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)

通俗理解:controllerdomain 里的类来收发数据。


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

你希望我画吗?

相关推荐
码智社1 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
萧瑟余晖2 小时前
JDK 26 新特性详解
java·开发语言
马优晨2 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
维天说5 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
Zane19946 小时前
并发 vs 并行:别再傻傻分不清了,一文讲透 Java 并发编程的第一课
java·后端
噢,我明白了6 小时前
java中Excel的导入和导出(EasyExcel)
java·开发语言·excel
吠品6 小时前
Zabbix Web界面误报Server未运行的排查与解决
java·服务器·数据库
啊湘7 小时前
天气查询API接口 按月Token鉴权 实时天气 物联网可用 文档齐全
java·后端·struts
Java内核笔记7 小时前
告别十亿美元的错误 : Spring Boot 4 空安全 (JSpecify) 实战
java·spring boot·后端
糖果店的幽灵7 小时前
langgraph的 MessagesState 解读
java·开发语言·人工智能·windows·langgraph