hibernate文档说我们用于composite-id的类应该实现serializable,这是我要经历的文档链接:http://docs.jboss.org/hibernate/orm/3.3/reference/en-US/html/mapping.html#mapping-declaration-compositeid
持久化类必须覆盖equals()和hashCode() 实现复合标识符相等。它还必须实施 序列化的。
但为什么需要实现serializable?
我已经浏览了这个SO链接:Why composite-id class must implement Serializable?
但我不理解那里给出的答案,请帮助我理解这里的概念。
答案 0 :(得分:2)
因为hibernate使用可以存储单个值的缓存,尤其是id。对于非原始类,需要有一种方法将这些单独的值转换为字节,以便在缓存中进行传输和存储。 hibernate用于非原始类的机制是java序列化。