Hibernate -------- 常用的接口和类

1 configuration


默认使用config.configure()的时候,读取的配置文件就是hibernate.cfg.xml。

但是configure()的方法有好几个,可以用于配置自定义的XML文件。


如果更改了.cfg.xml文件的名字,那么相应的config处也要更改。






2 SessionFactory





因此每次要创建一个session的时候,只需要调用这个工厂类的方法OpenSession即可。

当然还可以把closeSession()方法写进去。


3 Session




举例:


相当于select语句


相当于insert语句




相当于select。insert。


相当于 select 。drop 


相当于select。



4. Transation 


只要try中代码出现问题进入到catch中,那么就不会执行commit(),而是去执行rollback()代码。就相当于回到了session = null 创建那一步。

而且标准的写法也是必须要有try-catch的。否则会出现数据的错误。


事物回滚的解释:

最近在用做hibernate做项目,一直不明白session.beginTransaction().commit() 和 session.beginTransaction().rollback(); 有什么区别

一组业务整体处理的行为叫一个事务。这一组的业务都能成功处理,我们就可以把这个事务提交来保存你已做的行为结果。但如果一组中有任何的差错出现的话,我们就认为这事务不成功,需要回滚来撤消之前的操作。
举例:你去银行转账,转账我们有两步吧,从你账户中取出钱再往他账户中加钱。那这两步银行是必须要确保正确无误的进行的。要被看做成一个事务。其中任何一步出错就算是转账失败,但可能你这时是已经从你账户中扣了钱了,又没往他账户里加钱?怎么办算了?你不肯吧。所以银行会事务回滚,不保存你刚才的操作,即恢复到你没转账之前的状态。


参考:https://www.cnblogs.com/demongao/p/6053853.html

猜你喜欢

转载自blog.csdn.net/qq_36098284/article/details/80051279