Hibernate的UserType接口的几个方法的调用时机。hibernate文档上有的说的不太明确,在这里对其中的几个我本来不太明确的方法做个简单的记录
/** 告诉hibernate这个类型是不是可变类(不可变类是指创建了这个类的实例后,就不可以再修改它的属性)。有微小的性能优化 */ public boolean isMutable()
/** 从二级缓存中取这个对象数据时要调用的方法 */ public Object assemble(Serializable arg0, Object arg1) throws HibernateException
/** hibernate把这个数据放入二级缓存时要调用的方法 */ public Serializable disassemble(Object arg0) throws HibernateException
/** 执行session的merge方法的时候调用 */ public Object replace(Object original, Object target, Object owner) throws HibernateException