我有一个名为“员工”的实体,它与自己有联系。联接表示谁是该员工的经理。当我查询记录时,我得到了员工的整个层次结构。我希望实现的是只获取经理的几个字段,而不希望获取员工的经理的经理。我尝试使用但无法获得预期的输出来执行此操作。也使用过。@NamedEntityGraphProjections我还尝试了这里提到的方法JPA 使用连接表进行自连接自加盟春联欢注意 - 我不想使用注释@Query@Entitypublic class Employee { @Id @Column(name = "employeeId", nullable = false) private String employeeId; @Column(name = "firstName", nullable = false) private String firstName; @Column(name = "lastName", nullable = false) private String lastName; @Column(name = "middleName") private String middleName; @Column(name = "dateOfJoining", nullable = false) private LocalDate dateOfJoining; @ManyToOne(cascade = CascadeType.ALL) @JoinColumn(name = "line_manager_id") private Employee manager;}实际结果 -{ "firstName":"Super", "lastName":"Manager", "middleName":"", "dateOfJoining":"2012-12-31", "manager":{ "firstName":"Super", "lastName":"Manager", "middleName":"", "dateOfJoining":"2012-12-31", "manager":{ "firstName":"Admin", "lastName":"User", "middleName":"", "dateOfJoining":"2012-12-31", "manager":{ "firstName":"Admin", "lastName":"User", "middleName":"", "dateOfJoining":"2012-12-31", "manager": null, "employeeId":"P67" }, "employeeId":"P68" }, "employeeId":"P69" }, "employeeId":"P70"}预期成果{ "firstName":"Super", "lastName":"Manager", "middleName":"", "dateOfJoining":"2012-12-31", "manager":{ "firstName":"Super", "lastName":"Manager", "employeeId":"P69" }, "employeeId":"P70"}
添加回答
举报
0/150
提交
取消