使用Spring Data REST在json实体中注入数据

时间:2019-01-16 11:34:48

标签: spring rest spring-data-jpa

我有部门的JPA实体:

public class Department {
    @Id
    @Column(unique = true, nullable = false)
    private long id;

    @Basic
    @Column
    @Nationalized
    private String name;

    @Basic
    @Column(length = 400)
    @Nationalized
    private String branch;
    ...
}

和REST存储库

@RepositoryRestResource(collectionResourceRel = "departments", path = "departments")
public interface DepartmentRestRepository extends PagingAndSortingRepository<Department, Long> {
    ...
}

实体的branch字段是实体上级部门的ID,以空格分隔,例如1 2 3

当我通过/api/departments/ID查询特定部门时,是否可以向parents这样的字段附加所有父实体?

我尝试将getParents方法添加到实体,但是显然,它给了我不需要的父母对所有实体的递归查询。

更新2019.01.17
作为解决方法,我将Department实体分为DepartmentDepartmentWithParents。我向Department getParents()实体添加了DepartmentWithParents方法,并公开了返回DepartmentWithParents的REST API方法。
有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

作为一种解决方法,我将Department实体分为DepartmentDepartmentWithParents。我向Department getParents()实体添加了DepartmentWithParents方法,并公开了返回DepartmentWithParents的REST API方法。