2016-06-21 109 views
2

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

选择一种解决方案与另一种解决方案相比有什么优点/缺点?在所有事情都认为相同的情况下,AttributeConverter确实看起来简单得多。

回答

4

AttributeConverter需要JPA 2.1(Hibernate 4.3+),但是如果可用的话,这是一个更加简洁的选择。自定义的UserType可能会与未来的Hibernate版本冲突,而AttributeConverter可能不会。

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

此外,请确保您使用库进行地图字符串转换,而不是手动编码它。

相关问题