首页 > 数据库 >【转】[Java] 入参、出参、数据库实体等命名规则

【转】[Java] 入参、出参、数据库实体等命名规则

时间:2025-01-15 15:11:06浏览次数:1  
标签:java 示例 projectname 出参 入参 Java import com example

转自:kimi.ai

在Java 项目中,为了提高代码的可读性和可维护性,通常会对入参、出参和数据库实体等使用特定的后缀。以下是一些常见的命名规则和最佳实践:

1. 入参(Request DTOs)

  • 后缀:Request 或 Dto
  • 描述:入参通常是指从客户端接收的数据传输对象(DTOs),用于封装请求参数。
  • 示例:
    • UserCreateRequest
    • UserUpdateRequest
    • UserDto(如果上下文明确是请求参数)

2. 出参(Response DTOs)

  • 后缀:Response 或 Dto
  • 描述:出参是指发送给客户端的数据传输对象(DTOs),用于封装响应数据。
  • 示例:
    • UserResponse
    • UserListResponse
    • UserDto(如果上下文明确是响应数据)

3. 数据库实体(Entities)

  • 后缀:Entity
  • 描述:数据库实体类通常对应数据库表,用于表示持久化对象。
  • 示例:
    • UserEntity
    • OrderEntity
    • ProductEntity

4. 服务层对象(Service Objects)

  • 后缀:Service
  • 描述:服务层类通常包含业务逻辑,用于处理请求并调用数据访问层。
  • 示例:
    • UserService
    • OrderService
    • ProductService

5. 数据访问层对象(Repository Objects)

  • 后缀:Repository
  • 描述:数据访问层类通常用于与数据库交互,执行CRUD操作。
  • 示例:
    • UserRepository
    • OrderRepository
    • ProductRepository

6. 控制器层对象(Controller Objects)

  • 后缀:Controller
  • 描述:控制器层类通常处理HTTP请求,调用服务层并返回响应。
  • 示例:
    • UserController
    • OrderController
    • ProductController

示例项目结构

假设你有一个用户管理模块,以下是一个典型的项目结构示例:

 
com/
└── example/
    └── projectname/
        ├── controller/
        │   └── UserController.java
        ├── service/
        │   └── UserService.java
        ├── repository/
        │   └── UserRepository.java
        ├── model/
        │   └── UserEntity.java
        ├── dto/
        │   ├── UserCreateRequest.java
        │   ├── UserUpdateRequest.java
        │   ├── UserResponse.java
        │   └── UserListResponse.java
        └── config/
            └── AppConfig.java

示例代码

实体类(Entity)

java
package com.example.projectname.model;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name = "users")
public class UserEntity {
    @Id
    private Long id;
    private String name;
    private int age;

    // Getters and Setters
}

请求DTO(Request DTO)

java
package com.example.projectname.dto;

public class UserCreateRequest {
    private String name;
    private int age;

    // Getters and Setters
}

响应DTO(Response DTO)

java
package com.example.projectname.dto;

public class UserResponse {
    private Long id;
    private String name;
    private int age;

    // Getters and Setters
}

服务层类(Service)

java
package com.example.projectname.service;

import com.example.projectname.dto.UserCreateRequest;
import com.example.projectname.dto.UserResponse;

public interface UserService {
    UserResponse createUser(UserCreateRequest request);
}

数据访问层类(Repository)

java
package com.example.projectname.repository;

import com.example.projectname.model.UserEntity;
import org.springframework.data.jpa.repository.JpaRepository;

public interface UserRepository extends JpaRepository<UserEntity, Long> {
}

控制器层类(Controller)

java
package com.example.projectname.controller;

import com.example.projectname.dto.UserCreateRequest;
import com.example.projectname.dto.UserResponse;
import com.example.projectname.service.UserService;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class UserController {
    private final UserService userService;

    public UserController(UserService userService) {
        this.userService = userService;
    }

    @PostMapping("/users")
    public UserResponse createUser(@RequestBody UserCreateRequest request) {
        return userService.createUser(request);
    }
}

总结

在Java Spring项目中,使用特定的后缀来命名入参、出参和数据库实体等可以提高代码的可读性和可维护性。这些命名规则在团队协作中尤为重要,有助于保持代码的一致性和清晰性。

标签:java,示例,projectname,出参,入参,Java,import,com,example
From: https://www.cnblogs.com/z5337/p/18673057

相关文章

  • JAVA的初步了解 之 Java之父
     Java之父    在我开始下定决心开始学习这门编程的时候,我会疯狂的在网上找资源学习,其中B站便是我最常用最有效的学习平台之一    额...其实我是想说B站的资源相当不错.          正片开始:     首先我要介绍的是 Java......
  • 【转】[Java] 常见的文件命名规则
    来自:kimi.ai在Java项目中,遵循良好的文件命名规则对于代码的可读性、可维护性和团队协作至关重要。以下是一些常见的文件命名规则和最佳实践:1.包名(PackageNames)使用小写字母:包名应全部使用小写字母,避免使用下划线或中划线。反映项目结构:包名应反映项目的模块和层次结构,通常......
  • 利用 Java 爬虫获取 1688 商品评论的实践指南
    在电商领域,商品评论是消费者决策的重要参考因素,同时也是商家了解产品反馈、优化服务的关键数据来源。1688作为国内知名的B2B电商平台,拥有海量的商品评论数据。本文将详细介绍如何利用Java爬虫技术获取1688商品评论,并提供代码示例,帮助读者快速上手。一、项目背景与目标......
  • 必知必会!JavaScript 开发中的反模式与避坑指南
    一、开发“雷区”:JavaScript反模式危机四伏JavaScript作为软件开发领域的多面手,在Web前端、后端乃至移动端开发中均占据着举足轻重的地位。然而,在实际的开发过程中,众多反模式如同隐藏在暗处的陷阱,时刻威胁着开发的顺利进行。这些反模式的产生,源于JavaScript灵活的语法......
  • 5、提升Java的并发性
    CompletableFuture及反应式编程背后的概念:::info❏线程、Future以及推动Java支持更丰富的并发API的进化动力❏异步API❏从“线框与管道”的角度看并发计算❏使用CompletableFuture结合器动态地连接线框❏构成Java9反应式编程FlowAPI基础的“发布-订阅”协议❏反应式......
  • 【长文收藏】2025备战金三银四 Java 大厂面试题
    以下是一些2025年备战Java大厂面试可能会涉及的常见面试题:一、基础部分1.Java基本数据类型(1)解释自动装箱和自动拆箱的概念,并举例说明。一、自动装箱和自动拆箱的概念自动装箱(Autoboxing):自动装箱是Java编译器在基本数据类型和对应的包装类之间自动进行的转换,它将基......
  • Java面试指南
    Java数据类型在Java中,数据类型可以分为基本数据类型和引用数据类型,每种类型有其独特的用途和特点。以下是对这些类型的总结:1.基本数据类型(PrimitiveDataTypes)基本数据类型是Java内建的8种数据类型,用于存储原始数据,直接存储值而非对象引用。它们分为三类:数值类型......
  • java基本语法
    java基本语法一、注释注释:解释说明,代码块注释jvm不会进行解释在java中注释共有3中方式:①单行注释//②多行注释/…/③文档型注释(java独有javadoc)/***//*sfsdfsfsdfsdfsdfsdfsdfsdfsdfsfd*/publicclassHelloWorld{//aasads /* 这个一个main方法 ......
  • Java基础
    注释在Java里注释有三种:单行注释、多行注释、文档注释单行注释://注释内容注意:Java里关于单行注释有一个快捷键:ctrl+L多行注释:/*注释内容*/文档注释:/**注释内容*/关键字java中的关键字就是被赋予特殊含义的字#48个关键字abstract、assert、b......
  • 东软云医院HIS系统【Swing窗口+MySQL】(Java课设)
        客官进来看一眼呗,有惊喜!【帮你解决烦恼】:Java课设和计Java毕设太难不会做怎么办?系统类型Swing窗口类型+Mysql数据库存储数据使用范围适合作为Java课设!!!部署环境jdk1.8+Mysql8.0+Idea或eclipse+jdbc运行效果本系统源码地址:东软云医院HIS系统【Swing窗口+MySQL】......