在使用SpringJpa作实体映射时,想要把Map映射到数据库中,其中一种方法如Hibernate4学习总结(4)...-TOMSCUT,该种方法把集合中的信息在数据库中新建一个表,并通过外键关联,该种方法不符合我目前的要求,以后有需要在进行细致的了解与学习。
目前我的需求是将集合类中的信息存储到数据库中,例如有Map字段的formBody,最好是使用JSON格式,而SpringDateJpa也为我们提供了相关的方法,通过自定义对象转换器,并通过注解的形式对需要转换的字段进行标注即可。该接口位于javax.persistence.AtrributeConverter。我们通过自定义类实现该接口重写其中的方法实现需要的功能,本次具体的实现如下:
import com.alibaba.fastjson.JSONObject;
import javax.persistence.AttributeConverter;
/**
* @author :hym
* @create :Created in 2020/8/31
* @description :Jpa映射转换器,存储时对象转JsonString, 读取时相反
*/
public class JpaConverterObjectJson implements AttributeConverter<Object, String>