Hibernate的事务:

1、 设置事务隔离级别都是用  自己进行存储的

二进制      十进制

read uncommitted   读未提交        0001         1

read  committed   读已提交           0010         2

repeatable  read  重读                   0100         4       mysql的默认级别

serializable     可串行化                 1000          8

配置数据库的隔离级别直接写十进制的值即可。

在主配置文件(hibernate.cfg.xml)中配置数据库的隔离级别

<property  name="hibernate.connection.isolation"></property>

2、Hibernate 管理事务的方法

//开启事务:

Transcation t =  session.beginTransaction();

try{

//。。。。。写自己的代码(do  somework . .)

//提交事务:

}catch(Exception e){

//异常后:回滚事务

if(t!=null){

t.rollbback();

}

}

3、Hibernate得到Session对象的方式

Configuration  c =  new Configuration()

c.Configure();     //读取  hibernate.cfg.xml文件

SessionFactory   factory  =  c.buildSessionFactory();

方式一:

factory.openSession();

方式二:

factory.getCurrentSession();

SessionFactory线程安全的

Session是线程不安全的

Session要线程安全  建议使用  getCurrentSession();

openSession()和getCurrentSession()

1、openSession()每次调用生成新的Session

getCurrentSession()每次调用都使用同一个session(与当前线程绑定的session)

2、openSession()使用不需要配置

getCurrentSession() 必须要配置 ,在主配置文件 hibernate.cfg.xml中配置

name="hibernate.current_session_context_class"

Hibernate的增删改查(事务)的更多相关文章

  1. Hibernate的增删改查

    一.搭建Hibernate开发环境,这里就不说了,直接说环境搭好后的事情. 二.项目的目录结构

  2. EasyUI + Spring MVC + hibernate实现增删改查导入导出

    (这是一个故事--) 前言 作为一个JAVA开发工程师,我觉得最基本是需要懂前端.后台以及数据库. 练习的内容很基础,包括:基本增删改查.模糊查询.分页查询.树菜单.上传下载.tab页 主管发我一个已 ...

  3. hibernate之增删改查demo

    package dao; import java.util.ArrayList; import java.util.List; import org.hibernate.Query; import o ...

  4. Hibernate基础增删改查语法

    1.创建好Hibernate项目,创建好实体类和测试类,如果不会创建Hibernate项目的同学,点此处:http://www.cnblogs.com/zhaojinyan/p/9336174.htm ...

  5. Hibernate全套增删改查+分页

    1.创建一个web工程 2.导入jar包 3.创建Student表 4.创建实体类 package com.entity; public class Student { private Integer ...

  6. hibernate实现增删改查的各种方法

    1>接口(主要是增删改查的接口)BaseDao.java /** * * @author fly.zhou */ public interface IBaseDao { //增加对应实体的一条记 ...

  7. SpringMVC整合Hibernate实现增删改查之按条件查询

    首先我贴出我项目的结构,只完成了条件查询的相关代码,增删改没有写. 1.新建一个动态Web工程,导入相应jar包,编写web.xml配置文件 <context-param> <par ...

  8. (四)Hibernate的增删改查操作(1)

    Hiberntae的查找操作有多种: 1.  使用Criteria接口查询 Query_Criteria.java package action; import java.util.ArrayList ...

  9. hibernate学习笔记之四 Hibernate的增删改查

    采用JUnit测试,继承TestCase import java.util.Date; import junit.framework.TestCase; import org.hibernate.Se ...

随机推荐

  1. linux install Openvino

    recommend centos7 github Openvino tooltiks 1. download openvino addational installation for ncs2 ncs ...

  2. Java基础学习-Random类和Java数组

    1.随机数类(Random) package com.denniscui;   import java.util.Random; /*  * Random:用于产生随机数  *  * 使用步骤:  * ...

  3. selenium 文件上传

    一般分两个场景:一种是input标签,这种可以用selenium提供的send_keys()方法轻松解决: 另外一种非input标签实现起来比较困难,可以借助autoit工具或者SendKeys第三方 ...

  4. HackerRank-Python攻城歷程-1.Tuples

    Solution: if __name__ == '__main__': n = int(input()) integer_list = map(int, input().split()) t=tup ...

  5. windows 根据端口查看进行PID 并杀掉进程

    1. 首先用netstat -ano | find “端口号”查出进程号 明明有端口号是17568和18892, 如何确定是17568呢 2. takslist 查询当前的进行 3. 如何杀死进程呢  ...

  6. Git Learning3 Eclipse Tools(未完成)

    1.创建Git 操作:工程 右键 Team Share Project Git 完成创建 2.全局设置:Window->Preference->Git->Configuration- ...

  7. Asp.net core Identity + identity server + angular 学习笔记 (第一篇)

    用了很长一段时间了, 但是一直没有做过任何笔记,感觉 identity 太多东西要写了, 提不起劲. 但是时间一久很多东西都记不清了. 还是写一轮吧. 加深记忆. 这是 0-1 的笔记, 会写好多篇. ...

  8. Centos7 防火墙frewalld规则设置

    配置firewalld-cmd 查看版本: firewall-cmd --version 查看帮助: firewall-cmd --help 显示状态: firewall-cmd --state 查看 ...

  9. 解决Git Revert操作后再次Merge代码被冲掉的问题

    转:https://blog.csdn.net/paul_wei2008/article/details/77477932 https://blog.csdn.net/cxn945/article/d ...

  10. activiti-用户与用户组

    https://my.oschina.net/acitiviti/blog/283892 activiti学习笔记3-用户与用户组 收藏 安世博 发表于 3年前 阅读 5507 收藏 10 点赞 0 ...