AttributeConverter与Hibernate的UserType

ken*_*nyg 4 hibernate

在Java应用程序和MySql之间进行通信时,我需要在Map和JSON字符串之间进行转换.我遇到了两个非常有前途的解决方案:AttributeConverter和UserType.

选择一种解决方案与另一种解决方案之间是否有任何利弊 在所有事情都被认为是平等的情况下,AttributeConverter确实看起来确实简单得多.

Thr*_*nCA 10

AttributeConverter需要JPA 2.1(Hibernate 4.3+),但如果它可用,它是一个更清洁的选择.自定义UserType可能会破坏未来版本的Hibernate,而AttributeConverter可能不会.

确保@Convert在要转换的特定字段上指定注释,而不是设置autoApply,因为您不想转换所有地图或所有字符串.

还要确保使用库进行Map-String转换,而不是手动编码.