简单示例

本节以一个简单的分页查询演示基本的代码构成。

数据对象(实体)

Foo.java
package com.example.demo.entity;

import lombok.Data;

import javax.persistence.*;

@Entity
@Data
public class Foo {

    @Id
    @GeneratedValue
    private Long id;

    private String name;

    @ManyToOne
    private Bar bar;
}

除基本的JPA注解之外,使用lombok提供的@Data注解简化POJO配置。注意使用@ToString注解排除可能造成循环依赖的字段。

数据传输对象(DTO)

针对数据传输的需求,配置和实体字段的映射关系,定义Swagger数据模型。使用lombok简化代码。

数据查询对象(QO)

根据查询需求定义数据查询对象,定义Swagger数据模型。使用lombok简化代码。

数据持久层(Repository)

实现JpaRepositoryJpaSpecificationExecutor接口即可,如果需要自定义查询语句,只需额外实现RepositoryEnhancer接口即可。

业务逻辑层(Service)

进行业务逻辑操作

请求控制层(Controller)

映射HTTP请求,使用Swagger定义接口

Last updated