2016-06-21 2 views
2

Мне нужно преобразовать карту и строку JSON при общении между Java-приложением и MySql. Я столкнулся с двумя очень перспективными решениями: AttributeConverter и UserType.AttributeConverter vs UserType for Hibernate

Есть ли какие-либо плюсы/минусы между выбором одного решения над другим? Учитывая, что все считается равным, AttributeConverter действительно выглядит намного проще.

ответ

4

AttributeConverter требует JPA 2.1 (Hibernate 4.3+), но если он доступен, это намного более чистый выбор. Пользовательский UserType может ломаться с будущими версиями Hibernate, в то время как AttributeConverter, вероятно, не будет.

Убедитесь, что вы указываете аннотацию @Convert по определенным полям, которые вы хотите преобразовать, вместо установки autoApply, так как вы не хотите конвертировать все Карты или все строки.

Также убедитесь, что вы используете библиотеку для преобразования Map-String, а не вручную.

Смежные вопросы