org.hibernate.type.SerializationException: could not deserialize 反序列化失败

https://www.cnblogs.com/anhao/p/6676983.html

1.查看实体类有没有实现Serializable接口

例:public class Student implements Serializable { 

*****

}

2.看表中的字段有没有在实体中进行关系映射

3.hibernate配置中是否有序列化类型数据,即SerializableType,与对应的数据库数据是否相同

4.jdk,不同的jdk序列化的时候得到的结果是不同的,如果保存数据的时候用的是一个版本的jdk,而读数据(即反序列化的时候)是另一个版本的jdk那么有可能反序列化不成功。

5.最重要的一点(个人认为大家出错的原因是这个):  反序列化问题可能是实体类中的字段数据类型引起的.

    a.例如我的错误是把Timestamp引用成了:import org.apache.commons.net.ntp.TimeStamp;而正确的是:import java.sql.Timestamp;

    b.

private String[] entryMeters;
@Basic
@Column(name = "entry_meters", columnDefinition = "json")
public String[] getEntryMeters() {
return entryMeters;
}
public void setEntryMeters(String[] entryMeters) {
this.entryMeters = entryMeters;
}

 

原文地址:https://www.cnblogs.com/smileblogs/p/11288012.html