Использование Spring Boot 2 с Spring Data Rest.
Учитывая следующее дерево сущностей, где все классы имеют открытый репозиторий (обязательно):
abstract class Fruit;
class Apple extends Fruit;
class Lemon extends Fruit;
Вызов ресурса / фруктов абстрактной коллекциивозвращает объекты Fruit, каждый по своему ключу, названному в честь имен классов бетона:
{
_embedded: {
apples: [0: , 1: ..],
lemons: [0: , 1: ..]
}
}
Я бы хотел, чтобы в абстрактной коллекции фрукты были объединены в ключе, названном в честь имени абстрактного класса:
{
_embedded: {
fruits: [0: , 1: ..],
}
}
Работает только в том случае, если репозитории конкретных классов не выставлены.Мне также нужны эти конкретные ресурсы класса.
Он пытался поиграть с классом RelProvider для абстрактного класса Fruit, но он также меняет имя ключа для конкретных ресурсов коллекции, чего я не хочу:
GET /apples:
{
_embedded: {
fruits: [0: , 1: ..],
}
}
Вот что я хочу:
GET /fruits:
{
_embedded: {
fruits: [0: , 1: ..],
}
}
GET /apples:
{
_embedded: {
apples: [0: , 1: ..],
}
}
GET /lemons:
{
_embedded: {
lemons: [0: , 1: ..],
}
}