Hibernate使用总结

来源:互联网 发布:远程软件xt800 编辑:程序博客网 时间:2024/05/24 03:24

事务

为什么使用注解式声明式事物?

  1. 开发团队达成一致约定,明确标注事务方法的编程风格。
  2. 保证事务方法执行的时间尽可能短,不要穿插其他网络操作PRC/HTTP请求或者剥离到事务方法外部。
  3. 不是所有的方法都需要事务,如只有一条修改操作,只读操作不需要事务控制。

注意:开启事务,实际上就是关闭了自动提交的功能,改成了commit手动提交!
我们可以通过简单的对是否自动提交加以设置,完成开启事务的目的! set autocommit = 0;

事务的传播行为

PROPAGATION_REQUIRED–支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。
PROPAGATION_SUPPORTS–支持当前事务,如果当前没有事务,就以非事务方式执行。
PROPAGATION_MANDATORY–支持当前事务,如果当前没有事务,就抛出异常。
PROPAGATION_REQUIRES_NEW–新建事务,如果当前存在事务,把当前事务挂起。
PROPAGATION_NOT_SUPPORTED–以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。
PROPAGATION_NEVER–以非事务方式执行,如果当前存在事务,则抛出异常。

1 0
原创粉丝点击