即使使用@JsonManagedReference注释

时间:2016-02-05 22:40:57

标签: java json jpa jackson

我觉得我已经对杰克逊的序列化/反序列化进行了大量研究,我发现this blog post非常有帮助。然而,尽管我付出了最大的努力,我还是继续收到递归的JSON。我有两个模型 - 我们称之为公司和员工。

Company and Employee are joined in the database in a normalized table mapping FK's COMPANY_ID to EMPLOYEE_ID
When an Employee moves to another Company, they are still an Employee.
Companies have a 1:N relationship with Employees

来自员工模式:

@ManyToOne
@JoinTable(name="COMPANY_EMPLOYEE",
        joinColumns =
            { @JoinColumn(name = "EMPLOYEE_ID") },
        inverseJoinColumns =
            { @JoinColumn(name = "COMPANY_ID") })
@JsonManagedReference
private Company company;

public Company getCompany() { return this.Company; }
public void setCompany(Company company) {this.company = company;}

现在,从公司模式:

@OneToMany(mappedBy="company")
@JsonBackReference
private List<Employee> employees;

public List<Employee> getEmployees() { return employees; }

public void setEmployees(List<Employees> employees) {
    this.employees = employees;
}

我的吸气剂或其他东西需要@JsonIgnore吗?有人知道我在这里缺少什么吗?我希望员工在检索公司或公司时不会出现。但是,我希望每个员工都能出现一家公司。

0 个答案:

没有答案