Hibernate常用API以及使用说明
1===>Hibernate常用的aip有Configuration,SessionFactory,Transaction,Session
Configuration主要用于加载配置文件,使用
Configuration conf=new Configuration().configure("hibernate.cfg.xml")
来获取一个Configuration对象的实例,加载配置文件在应用启动时便应该对其进行初始化,而且整个应用的生命周期,仅需加载一次
2===>使用Configuration类的buildSessionFactory()方法可以用来获取一个Sessionfactory()对象,在整个应用中,作为Session的工厂仅存在一份就就可以
SessionFactory sf=conf.buildSessionFactory()
3===>SessionFactory用于创建会话,
Session session = sf.currentSession();
SessionFactory接口中提供有openSession()和getCurrentSession()两个方法用于获取与数据库交互的会话,
使用openSession()方法获取到的session,hibernate不会对其进行管理,用完后必须手动进行关闭,而且在多线程中不安全,不推荐使用
使用getCurrentSession()方法获取到的session,hibernate会对其进行管理,需要我们在配置文件中进行如下配置
<property name="current_session_context_class">thread</property>
使得到的session实例与线程进行绑定,在事务结束后,会自动关闭,不需要我们进行手动关闭,而且比较安全,不会重复产生session
session用于与数据库进行交互应该用于就丢,
4===>
使用Transaction tx=session.beginTransaction();来获取对事务Transaction接口的对象,用于对事务的管理
Session
对象的保存
Session中提供有数据库的增删改查方法
session.save()方法用于对数据的保存
按主键进行查询
Session中提供有两种方法
session.get(Class clazz,Serializable id) 根据参数中的id去查询数据库,如果没有结果返回null
session.load(Class clazz,Serializable id)根据参数中的id去查询数据库,如果没有结果会报出异常org.hibernate.ObjectNotFoundException
对象的更新
Hibernate常用API以及使用说明的更多相关文章
- java:Hibernate框架1(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态,增删查改)
1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件 准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cf ...
- ( 转)Hibernate常用API
http://blog.csdn.net/yerenyuan_pku/article/details/65103203 可在度娘上摘抄如下文字: Hibernate的核心类和接口一共有6个,分别为:S ...
- Hibernate常用api以及增删改查
一 .API的定义 所谓的API全称就是(Application Programming Interface,应用程序编程接口).就是类库对外提供的接口.类.枚举.注解等元素. 如:JDK API ...
- Java程序员从笨鸟到菜鸟之(五十二)细谈Hibernate(三)Hibernate常用API详解及源码分析--csdn 曹胜欢
新接触一个框架的目的就是想利用这个框架来为我们做一些工作,或者是让他来简化我们的工作,利用这个框架无非就是要利用这个框架所给我们提供的API去操作我们的数据,所以利用一个框架的好坏很大一部分取决于你对 ...
- hibernate常用API详解
根据个人使用Hibernate的经验,介绍一下Hibernate的多种不同的查询和CUD操作,这些东西在日常开发中非常常用,希望对大家有所帮助. 以下示例均以两张表为例:member和userinfo ...
- 简单了解Hibernate核心API
一.SessionFactory 1.它代表的是数据库的连接,其实就是在hibernate.cfg.xml文件中的配置信息 2.可以预定义SQL语句 3.SessionFactory是线程安全的,它维 ...
- Hibernate常用接口
Hibernate的接口类型 在了解了Hibernate的基本配置,映射文件后,道路已经铺平了.我们继续往前走.接下来,我们应该做的是了解Hibernate常用的接口,对Hibernate的工作方式进 ...
- JAVA基础学习-集合三-Map、HashMap,TreeMap与常用API
森林森 一份耕耘,一份收获 博客园 首页 新随笔 联系 管理 订阅 随笔- 397 文章- 0 评论- 78 JAVA基础学习day16--集合三-Map.HashMap,TreeMap与常用A ...
- html5 canvas常用api总结(一)
1.监听浏览器加载事件. window.addEventListener("load",eventWindowLoaded,false); load事件在html页面加载结束时发生 ...
随机推荐
- [SCOI2014]方伯伯的OJ(线段树)
方伯伯正在做他的Oj.现在他在处理Oj上的用户排名问题.Oj上注册了n个用户,编号为1-n“,一开始他们按照编号排名. 方伯伯会按照心情对这些用户做以下四种操作,修改用户的排名和编号: 1.操作格式为 ...
- 20165223《Java程序设计》第七周Java学习总结
教材学习内容总结 第11章-JDBC与MySQL数据库 要点 MySQL数据库管理系统 连接MySQL数据库 查询操作(基础) 更新.添加.删除(基础) 预处理语句(重点) 通用查询(难点) 事务 笔 ...
- Anaconda For Linux (附C#交互式编程的引入)
汇总系列:https://www.cnblogs.com/dunitian/p/4822808.html#ai Jupyter美化: https://www.cnblogs.com/dotnetcra ...
- luoguP4707 重返现世
收集邮票加强版,每个邮票不是等概率获得的了. 而且是获得K个,如果把一个全集S集合找出其获得时间集合(显然获得时间两两不同)的话,那么就是第n-k+1大的期望! %%%Sooke min-max容斥扩 ...
- Http请求报头设置
1.添加一个SetHeaderValue方法: public static void SetHeaderValue(WebHeaderCollection header, string name, s ...
- Html的简单学习笔记
1.Html简介 1)什么是html: HyperText Markup Language:超文本标记语言,网页语言. >超文本:超出文本范围. >标记: html中所有的操作都是使用标记 ...
- 转:mysql分页原理和高效率的mysql分页查询语句
(转自:http://www.jb51.net/article/46015.htm) 以前我在mysql中分页都是用的 limit 100000,20这样的方式,我相信你也是吧,但是要提高效率,让分页 ...
- mac 修改root密码
1.用当前用户登录进去bash: 输入命令: sudo passwd root
- Linux 中用 dd 命令来测试硬盘读写速度
dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. dd 命令通用语法格式如下: dd if=path/to/input_file ...
- JDBC工具类
package com.shundong.uitl; import java.sql.Connection; import java.sql.DriverManager; import java.sq ...