swagger 将 table 中的属性显示为重复

swagger shows attributes in a table as duplicate

我试图创建一个关系数据库。我想将用户 table 中的 ID、电子邮件、密码和电话列添加到雇主和雇员 table 中。我创建了如下代码所示的结构。

package hasancanozbek.hrms.Entities.concretes;

import hasancanozbek.hrms.Entities.abstracts.User;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.*;

@Data
@AllArgsConstructor
@NoArgsConstructor

@Entity
@Table(name = "employers")
public class Employer {

    @Id
    @Column(name = "user_id")
    private int userId;

    @Column(name = "company_name")
    private String companyName;

    @Column(name = "company_website")
    private String companyWebsite;

    @Column(name = "verified")
    private boolean verified;

    @OneToOne
    @MapsId
    @JoinColumn(name = "user_id")
    private User user;
   }

package hasancanozbek.hrms.Entities.abstracts;
import com.fasterxml.jackson.annotation.JsonIgnore;
import hasancanozbek.hrms.Entities.concretes.Employer;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.*;

@Data
@AllArgsConstructor
@NoArgsConstructor

@Entity
@Table(name = "users")
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    private int id;

    @Column(name = "email")
    private String email;

    @Column(name = "password")
    private String password;

    @Column(name = "telephone")
    private String telephone;

    @OneToOne(mappedBy = "user")
    @PrimaryKeyJoinColumn
    @JsonIgnore
    private Employer employer;
}

但是在swagger中添加雇主时ui,每个属性显示2次。例如,雇主 table 的公司名称为 属性,此 属性 大摇大摆地显示为 companyName 和 user.employer.companyName。我只想组合并显示相关 table 的属性以及用户 table 的属性。我该如何解决? Swagger SS

我解决了这个问题。我向用户 table 添加了来自 javax.persistence.

的注释
@Inheritance(strategy = InheritanceType.JOINED)

我从用户 class 那里继承了雇主 class。 我在第 15 行的 @Table 下添加了以下注释。

@PrimaryKeyJoinColumn(name = "user_id", referencedColumnName = "id")

这样,我就把用户table中的id值赋给了tables的table列,也就是我的基础table连接到它。 name 参数是您要为其赋值的列,referencedColumName 参数是您在基 table.

中的主键值