【JavaEE—Hibernate】Hibernate核心api

来源:互联网 发布:淘宝天猫优惠券网站 编辑:程序博客网 时间:2024/06/04 19:44

Configuration

(1)代码

Configuration cfg = new Configuration();cfg.configure();

上面代码的作用是到src下面找到名称hibernate.cfg.xml配置文件,创建cfg对象,把配置文件放到对象里面(加载核心配置文件)

SessionFactory

1 使用configuration对象创建sessionFactory对象
(1)创建sessionfactory过程中:
- 根据核心配置文件中,有数据库配置,有映射文件部分,到数据库里面根据映射关系把表创建

SessionFactory sessionFactory = cfg.buildSessionFactory();

下面这句配置:自动更新数据表

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

2 创建sessionFactory过程中,这个过程特别耗资源的
(1)在hibernate操作中,建议一个项目一般创建一个sessionFactory对象

3 具体实现
(1)写工具类,写静态代码块实现
* 静态代码块在类加载时候执行,执行一次
这里写图片描述

Session

1 session类似于jdbc中connection

2 调用session里面不同的方法实现crud操作
(1)添加 save方法
(2)修改 update方法
(3)删除 delete方法
(4)根据id查询 get方法
3 session对象单线程对象
(1)session对象不能共用,只能自己使用

Transaction

1 事务对象
这里写图片描述

2 事务提交和回滚方法
这里写图片描述

3 事务概念
(1)事务四个特性
原子性、一致性、隔离性、持久性

demo

package cn.wwl.hibernatetest;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import org.junit.Test;import cn.wwl.entity.User;import cn.wwl.utils.HibernateUtils;public class HibernateDemo {    @Test    public void testAdd() {//      第一步 加载hibernate核心配置文件        // 到src下面找到名称是hibernate.cfg.xml        //在hibernate里面封装对象//      Configuration cfg = new Configuration();//      cfg.configure();//      第二步 创建SessionFactory对象        //读取hibernate核心配置文件内容,创建sessionFactory        //在过程中,根据映射关系,在配置数据库里面把表创建//      SessionFactory sessionFactory = cfg.buildSessionFactory();        SessionFactory sessionFactory = HibernateUtils.getSessionFactory();//      第三步 使用SessionFactory创建session对象        // 类似于连接        Session session = sessionFactory.openSession();//      第四步 开启事务        Transaction tx = session.beginTransaction();//      第五步 写具体逻辑 crud操作        //添加功能        User user = new User();        user.setUsername("小鲜肉");        user.setPassword("99999");        user.setAddress("中国");        //调用session的方法实现添加        session.save(user);//      第六步 提交事务        tx.commit();//      第七步 关闭资源        session.close();        sessionFactory.close();    }}
3 1
原创粉丝点击