最近实在是太无聊了,特地复习了一下Hibernate,下面是一些我自认为对自己有用的东西。
1、Hibernate配置通常使用Annotation配置方式
对于在field上配置还是getXxx上配置的问题:通常在getXxx上配置
2、openSession()每次都是新的Session,需要手动close()
getCurrentSession()如果没有旧的就用新的,commit的时候会自动close()
3、事务机制:
jta:java transaction api
thread:
4、三种状态:transient/persistent/detached
区别:
> 对象中有没有ID
> 在数据库中有没有ID
> 在内存中有没有(Session缓存)
transient:内存中有个对象,没ID,缓存中也没有
persistent:内存中有,缓存中有,数据库有
detached:内存中有,缓存中没有,数据库中有
5、对于一对一双向外键关联
> Annotation:@OneToOne(mappedBy)
> xml:<many-to-one unique=.../> <one-to-one property-ref=""..../>
注意:凡是双向关联,必设mappedBy
6、使用了Annotation后,下面两句有区别,到底哪里配置错了呢?
正确:from com.handyeah.model.Person
错误:from Person
这个问题还在发现中.........