当前位置: 首页 > article >正文

Spring Boot 项目中 `Query` 后缀对象的放置位置

在 Spring Boot 项目中,带有 Query 后缀的查询对象通常属于请求参数数据传输层,推荐将其放置在以下位置之一:

推荐目录结构

src
 └── main
     └── java
         └── com
             └── example
                 ├── controller
                 ├── dto            # ✅ 推荐,DTO/Query 对象统一管理
                 │   ├── request    # ✅ 查询对象 (UserQuery, OrderSearchRequest)
                 │   ├── response   # ✅ 响应对象 (UserDTO, OrderDetailDTO)
                 │   └── common     # 可选:通用DTO
                 ├── entity
                 ├── mapper
                 ├── service
                 └── util

最佳实践说明

dto/request ➔ 放置查询参数对象 (UserQuery),明确标识为请求数据
dto/response ➔ 放置响应数据对象 (UserDTO),区分不同数据流向
dto/common ➔ 放置通用数据对象(如 PageInfoDTOResultDTO 等)

示例代码

UserQuery.java(放在 dto/request 文件夹)

package com.example.dto.request;

import lombok.Data;

@Data
public class UserQuery {
    private String username;
    private String email;
    private Integer age;
}

UserDTO.java(放在 dto/response 文件夹)

package com.example.dto.response;

import lombok.Data;

@Data
public class UserDTO {
    private String username;
    private String email;
    private String roleName;
}

🚨 为什么推荐这种结构?

清晰的职责分离:将查询、返回、通用数据分类,项目结构更直观。
易于维护:项目扩展时,新增 DTO 类更有条理。
符合主流实践:Spring Boot 项目中较为常见的目录规范。

这种方法更利于项目的长期维护,尤其是当项目规模扩大时,目录清晰度会大幅提升。


http://www.kler.cn/a/578523.html

相关文章:

  • 《C陷阱与缺陷》读书笔记(一)
  • Sqli-labs 1-20
  • 使用 vxe-table 导出 excel,支持带数值、货币、图片等带格式导出
  • 开放充电点协议(OCPP)技术解析:架构演进与通信机制 - 慧知开源充电桩平台
  • Deeplabv3+改进2:添加A2Attention注意力机制|有效涨点
  • VUE2脚手架的下载与安装
  • 基于SpringBoot+MyBatis+MySQL+Vue的智能家居管理系统设计与实现(附源码+数据库+毕业论文)
  • Django与视图
  • 英文字体:现代复古美学精致细节浓缩式衬线排版logo标题艺术字体 La Luxes Serif
  • R语言和RStudio安装
  • Xenium数据分析 | 数据预处理、单细胞降维聚类、细胞类型定义
  • 《几何原本》命题I.24
  • VBA 根据日期字符串 返回日期格式(只能识别部分常用格式)
  • 解锁DeepSpeek-R1大模型微调:从训练到部署,打造定制化AI会话系统
  • IO多路复用实现并发服务器
  • 三、滑动窗口——9. 找到字符串中所有字母异位词
  • c++20 在 <chrono> 中的 日历 和 时区 库
  • cmd中有cl但是conda虚拟环境没用cl
  • 【Recon】Git源代码泄露题目解题方法
  • Java在word中动态增加表格行并写入数据