Configuration configure = new Configuration().configure();
SessionFactory factory = configure.buildSessionFactory();
Session session = factory.openSession();
Transaction transaction = session.getTransaction();
transaction.begin();
session.save(user);
transaction.commit();
session.close();

一、Session接口

  常用方法:
  a.与数据库增删改查有关的方法
    get()  load()   OID查询方式
    save() update() delelte()  saveOrUpdae()
    createQuery()(HQL查询方式)
 createCriteria()

  b.与事务有关的方法

    getTransaction():当事务开启之后,通过session获取事务对象

    beginTransaction():开启事务

    rollback(): 事务回滚;commit():提交事务

  c.与缓存有关的方法:一级缓存:clear() evict() flush() refresh()

    d.close()方法
    session.close(); 关闭session

二、SessionFactory接口:SessionFactroy接口负责初始化Hibernate。

  Factory常用方法:

  a. openSession() :打开session

  b. getCurrentSession() :
获取当前线程session,当在主配置文件中已经将session绑定到当前线程,那么就可以在这里获取session

  c. close() :关闭工厂

三、Transaction接口:

  Transaction接口负责事务相关的操作,一般在Hibernate的增删改中出现,但是使用Hibernate的人一般使用Spring去管理事务。

四、Query接口:

  Query负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。它的返回值一般是List。需要自己转换。

五、Configuration接口:

  Configuration对象用于配置并根启动Hibernate。

  Hibernate应用通过Configuration实例来指定对象—关系映射文件的位置或者动态配置Hibernate的属性,然后创建SessionFactory实例。

  Configuration常用方法:

  a、configure(): 默认读取当前项目中的hibernate.cfg.xml的文件

   configure(参数):适用于在主配置文件不是hibernate.cfg.xml名称时

  b、getProperties(): 从cfg对象的properties集合中读取包括注配置文件中的key-value在内的所有的键值对

  c、addResource(): 作用类似于在主配置文件中的mapping的resource属性

  d、addClass(): 作用类似于在主配置文件中的mapping的class属性的功能,4.x和5.x有差异

  e、buildSessionFactory(): 创建工厂

hibernate核心类及常用方法的更多相关文章

  1. Hibernate核心类用法-使用Transaction管理事务

    一个典型的事务应该使用下面的形式 在创建完Session对象后即使用beginTransaction()启动事务 从此开始直到commit()之间的代码 都会处于同一个事务中 这两个函数之间所有的数据 ...

  2. Hibernate核心类和接口具体介绍

    一.hiobernate核心类和接口预览图 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGxnZW4xNTczODc=/font/5a6L5L2T/fo ...

  3. hibernate核心接口,和扩展接口。回顾笔记,以前没记,现在补上,纯手工敲的。

    hibernate核心接口: 所有的hibernate应用都会访问hibernate的5个核心接口 1,Configuration接口 Configuration用于配置并且根启动Hibernate. ...

  4. Activiti源码分析(框架、核心类。。。)

    http://jiangwenfeng762.iteye.com/blog/1338553 Activiti是业界很流行的java工作流引擎,关于Activiti与JBPM5的关系和如何选择不是本文要 ...

  5. Hibernate详解(5)——Hibernate核心接口和工作原理

    Hibernate核心接口 Hibernate有五大核心接口,分别是:Session Transaction Query SessionFactoryConfiguration .这五个接口构成了Hi ...

  6. hibernate核心配置

    # hibernate核心配置 注意:  - hibernate.cfg.xml默认放在src目录下(这样可以自动加载该文件) - 必须配置的参数:   * 数据库的四大参数和方言  - 可选配置的参 ...

  7. 深入解析Hibernate核心接口

    Hibernate有很多值得学习的地方,这里我们主要介绍Hibernate核心接口,包括介绍SessionFactory接口.Query和Criteria接口等方面. Session 接口对于Hibe ...

  8. Hibernate核心接口和工作原理

    Hibernate核心接口和工作原理 Hibernate有五大核心接口,分别是:Session .Transaction .Query .SessionFactory .Configuration . ...

  9. hibernate工具类

    因为hibernate的代码大部分都是固定的,为了将减少重复的代码的书写,可以将这些代码封装为一个工具类,获取hibernate的session对象. 1.工具类: package pers.zhb. ...

随机推荐

  1. ubuntu下安装mongodb

    https://www.cnblogs.com/shileima/p/7823434.html

  2. vue.js实战——props单向数据流

    Vue2.x通过props传递数据是单向的了,也就是父组件数据变化时会传递给子组件,但是反过来不行. 业务中会经常遇到两种需要改变prop的情况, 一种是父组件传递初始值进来,子组件将它作为初始值保存 ...

  3. 小程序组件中有bindinput监听报异常

    真机上有问题,ide上是没问题的,   组件有处理函数,结果异常说页面没有处理函数,加上处理函数后就不报异常了.

  4. idea 转载

    转载:https://blog.csdn.net/qq_34033853/article/details/77448431 摘要:在创建类时,自动生成代码的注释模板 本篇内容为大家提供的是Intell ...

  5. codeforces16B

    Burglar and Matches CodeForces - 16B A burglar got into a matches warehouse and wants to steal as ma ...

  6. Windows Server 2012 蓝屏 Wpprecorder.sys 故障

    坑爹的园区昨天停电了,导致运行中的服务器中断,来电之后,其中有一台Windows 系统的服务无法运行了,接了个显示器,发现无法进入系统了,挂掉了,这下可完蛋了,虽然做了Radio 磁盘阵列,数据不会丢 ...

  7. 【THUSC2017】【LOJ2982】宇宙广播 计算几何 高斯消元

    题目大意 有 \(n\) 个 \(n\) 维空间中的球,求这些球的所有公切面. 保证不会无解或有无穷多组解. \(n\leq 10\) 题解 你可以认为这是一道传统题. 记公切面为 \(a_1x_1+ ...

  8. JS生成随机数进行循环匹配数组

    function RndNum(n) { var rnd = ""; for (var i = 0; i < n; i++) rnd += Math.floor(Math.r ...

  9. js 里面的各种类型转换

    1:Object 对象在转换为 number 类型时,首先会调用 valueOf 方法,然后再调用 toString 方法,否则会抛出异常. 对象在转换为 string 类型时,首先会调用 toStr ...

  10. Codeforces Round #554 (Div. 2) B. Neko Performs Cat Furrier Transform(思维题+log2求解二进制位数的小技巧)

    传送门 题意: 给出一个数x,有两个操作: ①:x ^= 2k-1; ②:x++; 每次操作都是从①开始,紧接着是② ①②操作循环进行,问经过多少步操作后,x可以变为2p-1的格式? 最多操作40次, ...