У меня есть объект со строковым полем, в котором находится строка с кодировкой base64 внутри столбца jsonb. Эта строка для всех сущностей не может быть нулевой и всегда будет установлена в постоянное время. Все значения для этого поля составляют 20 Мегабайт +, поэтому я не хочу, чтобы это поле передавалось из базы данных каждый раз, когда я запрашиваю эту сущность.
Я отображаю только содержимое этого поля, некоторыевремени на нескольких моих страницах. Большинство других страниц, которые отображают мою сущность, не будут отображать строку из поля, которое я хочу условно исключить из передачи из БД.
Я хочу запрашивать огромное строковое значение только при необходимости. Можно ли сказать jpa выбирать эту строку только при необходимости?
Я не могу использовать @Transient, поскольку хочу, чтобы моя сущность сохранила строковое значение.
Поскольку строка, которую я хочу опустить во время запроса, большую часть времени находится внутри столбца jsonb, я предполагаю, что мне может понадобиться использовать собственный запрос и запросить все другие поля внутри объекта jsonb и пропуститьодин столбец, который мне не нужен. Это правда?
Я использую проекцию интерфейса, чтобы отобразить все другие поля, которые перечислены в виде строк в операторе select моего собственного запроса, чтобы получить доступ ко всем другим полям, кроме одного поля, которое я не делаюхочу большую часть времени.
Знали бы вы о более простом маршруте, где я мог бы сохранить некоторую простоту, если бы этот объект был когда-либо подвергнут рефакторингу или изменилось имя столбца?
Если бы я не использовал сущность, у которой был столбец типа jsonb, а изображение было просто в обычном старом столбце varchar, можно было бы опустить любое конкретное поле, используя менеджер сущностей или построитель запросов или jpql? Что-то вроде «выберите s из соединения SecurityCameraEvent s… где ...», а затем, когда я хочу получить полную сущность, я могу выбрать иначе?
Мои основные проблемы касаются рефакторинга другой сущностиполя и выяснить, есть ли у кого-нибудь лучшее решение для значений, встроенных в jsonb. Я уже знаю, что могу использовать собственный запрос с проекцией jpa, чтобы получить другие поля