Как автоматически сериализовать и десериализовать строку JSON с помощью JPA и Hibernate?

У меня есть класс данных/таблица «Пользователь», в которой есть столбец «Предпочтения»

CREATE table "user"; 
ALTER TABLE "user" ADD COLUMN preferences TEXT;

Тип настроек - ТЕКСТ, и я храню там JSON.

public class User extends AbstractEntity{
public String preferences;
}

поэтому значение user.preferencesравно"{notifyByEmail:1, favouriteColor:"blue" }"

Как я могу обернуть его какой-нибудь аннотацией, чтобы я мог получить к нему доступ, например

user.preferences.notifyByEmail

или без необходимости переноса в объект данных

user.preferences.get("notifByEmail");
user.preferences.set("notifByEmail",true);

Я предполагаю, что может быть какая-то аннотация Джексона, которую я могу добавить в поле как

@JsonGenerate
public String preferences;

Я новичок в JPA, и документация крутая.

Я считаю, что мой случай довольно распространен. Кто-нибудь может привести примеры?

6
задан Vlad Mihalcea 7 November 2017 в 09:41
поделиться