У меня есть организация 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
объекта - это идентификаторы родительских отделов объекта, разделенные пробелом, например, 1 2 3
.
Когда я запрашиваю конкретный отдел через /api/departments/ID
, можно ли присоединить к нему поле, например parents
, со всеми родительскими объектами, запрошенными?
Я попытался добавить метод getParents
к сущности, но он, очевидно, дал мне ненужные родительские запросы со всеми сущностями рекурсивно.
Обновление 2019.01.17 :
В качестве обходного пути я разделил Department
сущность на Department
и DepartmentWithParents
. Я добавил Department getParents()
метод к DepartmentWithParents
сущности и открыл метод REST API, который возвращает DepartmentWithParents
.
Есть ли лучший способ?