Hibernate映射机制与三态状态分析
Hibernate 的映射机制、三态状态、脏数据和 Session 缓存这几个知识点,说白了就是帮你更顺畅地搞定数据库操作,不用老写那些重复 SQL,效率能提不少。
对象映射挺核心的,@Entity
配上@OneToMany
,你就能把 Java 类跟数据库表像拼乐高一样组合起来。看过.hbm.xml
的人都知道,结构清晰,逻辑明了。
三态状态挺重要的:瞬时态就是刚 new 出来,Hibernate 不管你;持久态就是 Session 在盯着你;脱管态就是 Hibernate 说我不管你了但你数据还在。用得顺了,事务控制会轻松多。
脏数据的点在于,Hibernate 有个机制会自动发现你动了对象的状态,等事务提交时一口气把变更同步到库里,不用你手动 update。但如果你不清楚对象状态在哪一态,还是容易掉坑。
Session 缓存也蛮实用的,一级缓存默认就开着,Session 中查过的对象下次不用再打数据库,响应也快。再进一步还能开二级缓存,多个 Session 间共享,性能蹭蹭上。
推荐你可以看看这几个例子,尤其这个Hibernate 一对多单向映射示例,配置方式和cascade
的用法都讲得蛮清楚。
如果你正好在搞 Hibernate,或者项目里数据库交互挺频繁,可以趁这个机会把这些机制熟悉下,用得顺,开发效率是真的能上一个台阶。
30.5KB
文件大小:
评论区