Hibernate使用中的一些经验
在Hibernate3官方文档中有关于Hibernate的最佳实践,并且对二级缓冲等也作了介绍,这些很多朋友可能已经知道或者关注,我这里分享的主要是一些官方文档或者网上相对讨论比较少的经验。
1、对属性配置项中的update和insert的需要注意,该两项都默认是true,也就是在持久对象时的insert和update sql会包含所有的字段,如果我们开启Hibernate sql日志,就会明显看到这个问题。其实我们往往在update的时候只更新部分数据,有些数据根本不会发生在update阶段。例如createDate之类的内容。所以在配置持久对象的时候我们更多要关注那些字段update需要设置成false。其实比较了解ORM的朋友这是基本注意问题。
<property name="crateTime" type="timestamp" column="create_time" update="false"/>
<id name="id" column="id" type="long"> <generator class="native"> <param name="sequence">LMS_S_XX_ID</param> </generator> </id>