JPA联合主键查询重复解决方案

 数据库数据

JPA联合主键查询重复解决方案_第1张图片

联合主键表,接口查询始终出现相同的第一行值(接口是groupid倒序):

JPA联合主键查询重复解决方案_第2张图片

 

具体解决方案请查看红色字体部分:

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.Proxy;

import java.io.Serializable;

import javax.persistence.*;

@Data
@Entity
@Table(name = "group_role")
@DynamicUpdate
@DynamicInsert
@Proxy(lazy = false)
@IdClass(Aa.class)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class GroupRole implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * Fields groupid : 群组id
     */
    @Id
    @Column(name = "groupid")
    @ApiModelProperty("群组id")
    private Long groupid;
    
    /**
     * Fields roleid : 角色id
     */
    @Id
    @Column(name = "roleid")

    @ApiModelProperty("角色id")
    private Long roleid;
}

class Aa implements Serializable {
    private static final long serialVersionUID = 1L;
    private Long groupid;
    private Long roleid;
}

class Aa 可以建在po对象类一个文件中,也可以单独创建类文件。

修改后接口返回:

JPA联合主键查询重复解决方案_第3张图片

 

你可能感兴趣的:(技术贴,jpa,联合主键)