Hibernate持久化步骤
1、 读取并解析配置文件
Configuration config= new Configuration().configure();
相当于使用DataSource获取连接前读取DataSource的配置文件
2、 读取并解析映射信息,创建SessionFactory
SessionFactory factory = config.buildSessionFactory();
相当于创建DataSource对象
3、打开session
Session session = factory.openSession();
相当于JDBC获得连接
4、开始一个事务(增删改操作必须,查询操作可选)
tran =this.session.beginTransaction();
开始事务
5、持久化
this.session.save(user);
持久化操作
6、提交事务
tran.commit() ;
提交事务
7、关闭session
session session.close()
关闭连接
---------------------------------------
(1)创建Configuration对象
在这一步中主要为了进行配置文件的装载操作,读取所有的配置文件并进行解析.
(2)创建SessionFactory对象
通过创建好的Configuration对象可以创建一个SessionFactory对象的实例,它
是产生Session对象实例的工厂,它在整个应用中应该是唯一的.
(3)创建Session对象
Session对象类似于与数据库的连接对象,可以理解为与数据库建立的一个连接,
但它的功能要比JDBC中的Connection对象丰富得多.
(4)开始一个事务Transaction
在Java中定义一个事务操作的开始,这是使用hibernate进行持久化操作必不可少
的步骤.
(5)进行持久化操作
在这个步骤中可以对Java对象进行增删改查操作.
(6)结束事务Transaction
在操作完成后还要进行显式的结束事务的操作.
(7)关闭Session
类似于释放数据库连接.
Hibernate持久化步骤的更多相关文章
- Hibernate入门步骤及概念
1.什么是Hibernate Hibernate是一个开发源代码的对象关系映射框架,它对JDBC进行非常轻量级的对象封装,使得程序员可以随心所欲地使用对象编程思维来操纵数据库.Hibernate可以应 ...
- Spring整合Hibernate的步骤
为什么要整合Hibernate?1.使用Spring的IOC功能管理SessionFactory对象 LocalSessionFactoryBean2.使用Spring管理Session对象 Hib ...
- hibernate学习笔记(1)hibernate基本步骤
hibernate基本步骤 1.创hibernate置对象 Configuration config = newConfiguration(); config.configure("hibe ...
- 1.1Hibernate持久化类和Hibernate持久化对象状态
一.持久化对象po类 1.po定义 PO,是Persistent Object的缩写,是持久化类.PO是由PO=POJO+hbm映射配置组成. 2.通俗理解 PO类即持久化类,其实就是一个普通的Jav ...
- Hibernate持久化对象修改id重新保存的办法
Hibernate持久化对象修改id重新保存的办法——Hibernate学习记录二 2017年11月10日 20:16:48 筱光 阅读数:1122 版权声明:本文为博主原创文章,未经博主允许不得 ...
- 2、Hibernate持久化编写
一.对于hibernate中的PO编写规则: 1. 必须提供一个无参数的public构造方法 2. 所有属性要private ,对外提供public 的get/set方法 3. 在PO类必须提 ...
- (转) Hibernate持久化类与主键生成策略
http://blog.csdn.net/yerenyuan_pku/article/details/65462930 Hibernate持久化类 什么是持久化类呢?在Hibernate中持久化类的英 ...
- hibernate 持久化对象 save
hibernate 持久化对象 save new出来的user对象是游离状态的对象,执行session.save()方法保存后,user对象就变为持久化了,持久化的对象跟数据库表双向绑定的意思, 对象 ...
- Spring整合Hibernate详细步骤
阅读目录 一.概述 二.整合步骤 回到顶部 一.概述 Spring整合Hibernate有什么好处? 1.由IOC容器来管理Hibernate的SessionFactory 2.让Hibernate使 ...
随机推荐
- [BZOJ1975]HH去散步 图论+矩阵
###[BZOJ1975]HH去散步 图论+矩阵 题目大意 要求出在一个m条边,n个点的图中,相邻两次走的边不能相同,求在t时间时从起点A走到终点B的路径方案总数.将答案mod45989 输入格式: ...
- 怎么用命令行运行jar文件
假设你配置好了jre环境,你如今有一个打包好的jar文件,你能够这样子開始运行 java -classpath example.jar mainClass -classpath告诉虚拟机在哪里找类的字 ...
- 面试-MySQL
1 事务的特性 事务具有四个特性:原子性(Atomicity).一致性(Consistency).隔离性(Isolation)和持续性(Durability).这四个特性也简称ACID性. (1)原 ...
- JAVA设计模式之【外观模式】
通过引入一个外观角色来简化客户端与子系统之间的交互. 顾客无需直接和茶叶.茶具.开水等交互,整个泡茶过程由服务员来完成,顾客只需与服务员交互即可. 通过引入一个外观角色可以降低原有系统的复杂度,同时降 ...
- ElasticSearch Shard——本质上是做分布式扩展,副本对于集群的稳定性有很强的影响
什么是一个Shard? Shard就是一个Lucene Index,参照文章(深入理解Shard和Lucene Index). Index需要多少个Shard? 回答这个问题,我们需要先谈谈节点,一个 ...
- 正睿NOIP赠送附加赛1
T1:math 题目链接: http://zhengruioi.com/contest/156/problem/471 题解: 先讲讲我的乱搞做法.对于前面70%,我跑了背包.因为背包有后效性...我 ...
- 寻找两个有序数组的中位数 C++实现leetcode系列(四)
给定两个大小为 m 和 n 的有序数组 nums1和 nums2. 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n)). 你可以假设 nums1 和 nums2 不 ...
- _itoa进制转换
#define _CRT_SECURE_NO_WARNINGS #include <stdlib.h> #include <stdio.h> void main() { int ...
- xBIM 高级01 IFC多模型合并
系列目录 [已更新最新开发文章,点击查看详细] 多模型合并可以实现以下功能: 覆盖多个模型以表现得像一个模型 统一访问数据,就像它是单个模型一样 只读.要修改模型的内容,您必须使用特定模型 不 ...
- C# 比较两个数据的不同
string[] arrRate = new string[] { "op1010", "op1020", "op1030", " ...