标签:数据 jdb tran 构造 code 开启 factor 方法 string
程序源码:
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import pers.zhb.domain.Student;
class HinernateTest{
public static void testAdd() {
//(1)加载hibernate核心配置文件
//src目录下的配置文件名称是固定的:hibernate.cfg.xml
Configuration configuration= new Configuration();
configuration.configure();
//(2)读取hibernate核心配置文件的内容,创建sessionFactory对象,根据映射关系创建相应的表
SessionFactory sessionFactory=configuration.buildSessionFactory();
//(3)利用sessionFactory对象创建session对象
//类似于创建连接
Session session=sessionFactory.openSession();
//(4)开启事务
Transaction transaction=session.beginTransaction();
//(5)具体操作
Student student=new Student();
student.setSname("zzzz");
student.setSex("男");
student.setBirthday("2019-11-11");
student.setClassno("201911");
student.setPoint(111);
student.setPhone("1873496511");
student.setEmail("20171514@qq.com");
session.save(student);
//(6)提交事务
transaction.commit();
//(7)关闭资源
session.close();
sessionFactory.close();
}
public static void main(String []args){
HinernateTest hinernateTest=new HinernateTest();
hinernateTest.testAdd();
}
}
1、configuration对象:
Configuration configuration= new Configuration(); configuration.configure();
创建时调用空参构造方法,加载src目录下的hibernate.cfg.xml文件。
2、sessionFactory对象(用于创建操作数据库的session对象的工厂):
SessionFactory sessionFactory=configuration.buildSessionFactory();
根据配置信息,创建sessionFactory对象。
特点:
(1)负责保存和使用所有配置信息,消耗的内存资源比较大。
(2)线程安全。
根据sessionFactory对象的特点,应该尽量只创建一个sessionFactory对象。
3、session对象:
Session session=sessionFactory.openSession();
类似于JDBC中的创建连接。
4、transaction对象:
Transaction transaction=session.beginTransaction();
开启事务并获得操作事务的transaction对象。
5、提交事务:
transaction.commit();
6、回滚事务:
transaction.rollback();
7、释放资源:
session.close();
sessionFactory.close();
标签:数据 jdb tran 构造 code 开启 factor 方法 string
原文地址:https://www.cnblogs.com/zhai1997/p/11801647.html