JSON
形式でサービスに送信するエンティティをマップしました。これが私のエンティティです
@Entity
@Table(name = "company")
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class, property = "id")
public class Company implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
@Column
private String name;
@OneToMany(mappedBy = "company")
@Cascade(value = CascadeType.ALL)
private Collection<Employee> employees;
私の従業員クラス
@Entity
@Table(name = "employee")
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class, property = "id")
public class Employee implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
Integer id;
@Column
String name;
@ManyToOne()
@Cascade(value = org.hibernate.annotations.CascadeType.ALL)
@JoinColumn(name = "company_id", referencedColumnName = "id")
private Company company;
しかし、適切なjson形式ではありません。
{
"id": 1,
"name": "Tim",
"company": {
"id": 1,
"name": "Microsoft",
"employees": [1, {
"id": 5,
"name": "Jack",
"company": 1
}, {
"id": 6,
"name": "Jack",
"company": 1
}, {
"id": 7,
"name": "Jack",
"company": 1
}, {
"id": 8,
"name": "Tommy",
"company": 1
}]
}
}
しかし、私が言ったように、「会社」に「従業員」オブジェクトは必要ありません。私のJSON
ファイルでそれを除外する方法は?