hibernate核心API使用
1.Configuration
加载核心配置文件,核心配置文件名称和位置固定,否则会找不到
2.SessionFactory对象一个项目只创建一个,大家公用
根据配置文件和映射关系创建表
由于要创建表,这个过程特别消耗资源,建议一个一个项目创建一个SessionFactory对象
具体实现:
@1工具类,写静态代码块实现,静态代码块在类加载时候执行。
3.Session
1.类似于JDBC中的连接connection
2.调用Session里面的不同方法实现增删改查操作
---添加 :save方法
---修改:update方法
---删除:delete方法
---根据id查询:get方法
3.Session对象单线程对象,我只能自己用,不能共用
4.Transaction事务
提交和回滚
失败可以回滚
事务基本概念:
--一组要么同时执行成功,要么同时执行失败的SQL语句,是数据库操作的一个执行单元。
--事务开始于:
---连接到数据库上,并执行一条DML语句(DELETE,INSERT.UPDATE)
---前一个事务结束后,有输入了另外一条DML语句
事务结束于:
---执行commit或rollback语句
---执行一条DDL语句,如create table语句,自动提交
---执行一条DCL语句,如grant,自动提交
---断开与数据库的连接
---执行了一条DML语句,该语句却失败了。这种情况会为这个DML语句执行ROLLBACK语句
事务的四大特点:
---atomicity(原子性)
@表示事务内所有操作是一个整体,要么全部成功,要么全部失败。
---consistency(一致性)
@表示一个事务内有一个操作失败时,所有的修改过的数据都必须回滚到修改前的状态。
---isolation(隔离性)
@事务查看数据时所处的状态,要么是另一并发事务修改它之前的状态
要是另一事务修改它之后的状态,事务不会查看中间状态的数据
---durability(持久性)
@持久性事务完成之后,它对于系统的影响是永久性的。
事务隔离级别:
--读取未提交
--读取已提交
--可重复读
--序列化
hibernate核心API使用的更多相关文章
- 简单了解Hibernate核心API
一.SessionFactory 1.它代表的是数据库的连接,其实就是在hibernate.cfg.xml文件中的配置信息 2.可以预定义SQL语句 3.SessionFactory是线程安全的,它维 ...
- Hibernate核心API
------------------------siwuxie095 (一)Configuration 1.一般情况 或: 加载核心配置文件:在 src 下找到名称为 Hibernate.cfg.xm ...
- Hibernate入门教程(二):Hibernate核心API
1.Configuraction onfiguration configuration = new Configuration(); configuration.configure(); 到src下面 ...
- Hibernate_day01--Hibernate配置文件详解_核心api
Hibernate映射配置文件(重点) 1 映射配置文件名称和位置没有固定要求 2 映射配置文件中,标签name属性值写实体类相关内容 (1)class标签name属性值实体类全路径 (2)id标签和 ...
- hibernate系列笔记(2)---Hibernate的核心API
Hibernate的核心API 一般我们通过hibernate进行操作的时候,都会遵循下面的流程,那么接下来我对每一个步骤进行讲解: 1 public void testInsert() { 2 // ...
- hibernate框架(2)---Hibernate的核心API
Hibernate的核心API 一般我们通过hibernate进行操作的时候,都会遵循下面的流程,那么接下来我对每一个步骤进行讲解: 1 public void testInsert() { 2 // ...
- hibernate框架学习第二天:核心API、工具类、事务、查询、方言、主键生成策略等
核心API Configuration 描述的是一个封装所有配置信息的对象 1.加载hibernate.properties(非主流,早期) Configuration conf = new Conf ...
- 三大框架 之 Hibernate框架概述(概述、配置、核心API)
目录 Hibernate框架概述 什么是框架 hibernate简介(JavaEE技术三层架构所用到的技术) hibernate是什么框架 ORM hibernate好处 Hibernate基本使用 ...
- hibernate核心接口,和扩展接口。回顾笔记,以前没记,现在补上,纯手工敲的。
hibernate核心接口: 所有的hibernate应用都会访问hibernate的5个核心接口 1,Configuration接口 Configuration用于配置并且根启动Hibernate. ...
随机推荐
- JVM菜鸟进阶高手之路十四:分析篇
转载请注明原创出处,谢谢! 题目回顾 JVM菜鸟进阶高手之路十三,问题现象就是相同的代码,jvm参数不一样,表现的现象不一样. private static final int _1MB = 1024 ...
- 常用的redis命令
常用的redis命令 http://www.runoob.com/redis/redis-tutorial.html 菜鸟教程 Cmd连接有密码的redis:$ redis-cli -h ho ...
- 在centos上搭建SVN服务器和MySQL
----------搭建MySQL--------------- 1.查看yum库中的mysql yum list | grep mysql //查看yum库中的mysql 2.选择需要的mysql进 ...
- OpenStack搭建遇到的问题
前言:对于像我这种新手来说,搭建OpenStack真的很费劲,因为我总是每配置一个服务,我就想弄懂,后来搭建过程很累人,因此我想了个办法,等我搭建出来再学.我这里将记录我从开始之初到我学习,再到我毕业 ...
- “核弹级”Android漏洞Janus,黑客可以任意篡改App
美国时间12月9日,Google披露了一个名为"Janus"安卓漏洞.该漏洞可以让攻击者绕过安卓签名机制,从而让攻击者对App进行篡改,安卓5.0到8.0等个版本系统均受影响. 顶 ...
- mysql分区分表
为毛要分表和分区,,,,所有数据库的通病,文件越大,性能越低...那问题就来了.数据越多文件越大...无解?哎,所以说知道 为毛要分区了吧!那分表又是毛线?分表就是把一张表拆分成若干表,,,根据情况常 ...
- php 写程序求三个数的最大值
最简单的调用PHP自带的max函数即可:echo max(1,2,3,4,5);如果要自定义函数的话:function test($a,$b,$c){ return $a > $b ?($a & ...
- 超简单的php缓存类
<?php class Cache { private $dir = "data/cache/";//定义缓存目录 private $key='c_a_sss'; // 文件 ...
- Codeforces 830C On the Bench
题意:给你n个数,问有多少种排列方式使得任意两个相邻的数的乘积都不是完全平方数 我好弱,被组合和数论吊着打... 首先我们可以把每个数中固有的完全平方数给分离出来,那么答案其实就只与处理后的序列相关. ...
- js 哈希路由原理实现
在 js 中,有一种方法,可以在不刷新页面的情况下,页面的内容进行变更,ajax 是一种,这里介绍另一种,就是 哈希路由原理 先看一个简单的路由和页面内容关联的例子,要实现两个功能: 1.1. 浏览器 ...