1、Configuration对象:

        Configuration conf=new Configuration();
conf.configure();
 1.1 到 src下面找到名称hibernate.cfg.xml 配置文件,创建对象,把配置文件放到对象里面(加载核心配置文件)
 1.2

2、SessionFactory对象:(重点)

  1 使用 configuration对象创建sessionFactory对象

   1.1 创建sessionfactory过程中做事情 

    根据核心配置文件中,有数据库配置,有映射文件部分,到数据库里面根据映射关系把表创建

<property name="hibernate.hbm2ddl.auto">update</property>

  2 创建sessionFactory过程中,特别耗费资源

  3 具体实现:

    3.1 写工具类,写静态代码块实现

      静态代码块在类加载时候执行,执行一次

public class HibernateUtils {

    static Configuration conf=null;
static SessionFactory factory=null; //静态代码块实现
static{
//加载核心配置文件
conf=new Configuration();
conf.configure();
factory = conf.buildSessionFactory();
} //提供方法返回SessionFactory
public static SessionFactory getSessionFactory(){
return factory;
}
}

3、Session(重点)

  1  session类似于jdbc中connection

   2 调用session 里面不同的方法实现crud操作

    2.1 添加 save 方法

    2.2 修改update 方法

    2.3 删除delete 方法

    2.4 根据id 查询get方法

   3  session对象单线程对象

4 Transaction 

  1 事务对象

  开启事务
Transaction tx = session.beginTransaction();

  2 事务提交和回滚方法

tx.rollback();    
tx.commit();

  3 事务概念

    3.1 事务四个特性:

       原子性 一致性  隔离性  持久性

Hibernate 的Configuration、sessionFactory和session和transaction对象解释的更多相关文章

  1. [原创]java WEB学习笔记77:Hibernate学习之路---Hibernate 版本 helloword 与 解析,.环境搭建,hibernate.cfg.xml文件及参数说明,持久化类,对象-关系映射文件.hbm.xml,Hibernate API (Configuration 类,SessionFactory 接口,Session 接口,Transaction(事务))

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  2. Hibernate 基础解析(Configuration,SessionFactory,Session,Transaction,Query,Criteria)

    1       框架体系结构 对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实 现面向对象编程语言里 ...

  3. Hibernate初始化创建SessionFactory,Session,关闭SessonFactory,session

    1.hibernate.cfg.xml <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuratio ...

  4. Hibernate学习---Configuration,Session,SessionFactory

    上一节我们讲到了Hibernate的测试,并且给出了测试代码,刚开始看见这个测试代码的同学估计是一头雾水把,所以这一节我们来讲一下测试代码. 本节主要内容: Configuration Session ...

  5. hibernate中3个重要的类 Configuration SessionFactory Session

    配置类Configuration 主要负责管理hibernate的配置信息以及启动hibernate,在hibernate运行时,配置文件取读底层的配置信息,基本包括数据库驱动,url.usernam ...

  6. hibernate中的SessionFactory,Session分别表示什么啊?如何理解?

    Session接口         Session接口对于Hibernate   开发人员来说是一个最重要的接口.然而在Hibernate中,实例化的Session是一个轻量级的类,创建和销毁它都不会 ...

  7. 【Hibernate】(2)Hibernate配置与session、transaction

    1. Hibernate经常使用配置 使用hibernate.default_schema属性能够让全部生成的表都带一个指定的前缀. 2. session简单介绍 不建议直接使用jdbc的connec ...

  8. Could not open Hibernate Session for transaction;

    javax.servlet.ServletException: org.springframework.transaction.CannotCreateTransactionException: Co ...

  9. 为什么要用Hibernate框架? 把SessionFactory,Session,Transcational封装成包含crud的工具类并且处理了事务,那不是用不着spring了?

    既然用Hibernate框架访问管理持久层,那为何又提到用Spring来管理以及整合Hibernate呢?把SessionFactory,Session,Transcational封装成包含crud的 ...

随机推荐

  1. WAS 手动删除server

    有时候WPS Server上的应用会一直start不起来,尝试卸载也会失败.在这种情况下,我们可以手动删除这个文件. 步骤如下: 1. Stop server 2. 进入$Profile_instal ...

  2. xshell常用的快捷键

    删除ctrl + d      删除光标所在位置上的字符相当于VIM里x或者dlctrl + h      删除光标所在位置前的字符相当于VIM里hx或者dhctrl + k      删除光标后面所 ...

  3. unity的inputField文本框赋值问题

    GameObject t = GameObject.Find("InputFieldT"); Text tt = t.transform.Find("Text" ...

  4. 微信小程序接入百度统计

    一. 百度统计添加应用,获取appkey和微信小程序统计sdk: 1. 百度统计首页,点击“我的全部应用”右侧的添加按钮: 2. “应用类型”选择小程序统计,选择微信小程序,填写应用名称信息,选择内容 ...

  5. java Scanner类注意事项

    1,循环或递归调用获取数字时,不能用hasNextInt()判断是否有输入,不然会陷入死循环,应该用hasNext().获取也不能用nextInt(),应用next(),否则也会死循环 例如这段代码, ...

  6. task 定时设置

    每天凌晨2点  0 0 2 * * ?和每天隔一小时 0 * */1 * * ? 例1:每隔5秒执行一次:*/5 * * * * ? 例2:每隔5分执行一次:0 */5 * * * ? 在26分.29 ...

  7. load balancer does not have available server for client: provider

    Ask Question up vote6down votefavorite 4 I'm trying to use Feign client. Below is my feing client: i ...

  8. Mac下GitHub以及GitHub Desktop使用实战

    Hub是一个面向开源及私有软件项目的托管平台.开源代码库以及版本控制系统,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub.通常在Windows下使用GitHub的教程是非常多的, ...

  9. opencv版本的问题

    opencv版本的问题(由于我安装了两个版本opencv-2.4.9 and opencv-3.1.0),搜了相关问题,可以通过修改了CMakeList.txt解决此问题. 参考了这个博客:http: ...

  10. [z]libevent入门教程:Echo Server based on libevent 不指定

    [z]https://www.felix021.com/blog/read.php?2068 花了两天的时间在libevent上,想总结下,就以写简单tutorial的方式吧,貌似没有一篇简单的说明, ...