Переопределить аннотацию @JsonIgnore для некоторых контроллеров. Джексон. весна

Мне нужно сериализовать поле фотографий только для прямых запросов к сущности. Но когда пользователь запрашивает все объекты MediaHolders, сериализуйте только короткие данные с помощью photoSize.

Я использую Kotlin, Jackson, Spring и Hibernate. Я пробовал:

  • @JsonView на contoller. Не работает. JsonView не переопределяет поведение @JsonIgnore. Или мне нужно будет аннотировать все поля в базовом классе PersonalDomainObject и всех контроллерах, что не подходит для меня.
  • Пользовательский JsonFilter, но то же самое, он не видит игнорировать поля. И я не могу добавить разные фильтры на разных контроллерах.

Может быть, мне что-то не хватает, но я думаю, что это очень обычная задача в оптимизации. Большое спасибо за любое предложение!

@JsonIgnoreProperties("createdAt", "updatedAt", "owner", "hibernateLazyInitializer", "handler") open class MediaHolder : PersonalDomainObject() { @OneToMany(cascade = arrayOf(CascadeType.PERSIST, CascadeType.REMOVE), mappedBy = "mediaHolder") @LazyCollection(LazyCollectionOption.EXTRA) var photos:MutableList<Photo> = mutableListOf() val photosSize: Int get() = photos.size }