一:Hibernate简介
来源:互联网 发布:淘宝主持真的假的 编辑:程序博客网 时间:2024/06/16 05:22
Hibernate是一个对象关系映射(Object-Relation Mapping,ORM)框架,它对JDBC进行了轻量级的封装。应用HIbernate框架,程序员可以不用再面对繁琐的面向过程的数据库操作,而是升级到面向对象的问题上来,这样不仅提高了开发效率,还可以避免应用JDBC编程时容易发生的错误。
一:什么是对象关系映射呢?
对象关系映射,其实从字面上就可以理解其含义,就是把关系与对象映射起来,关系指的是关系数据库,而对象指的是程序中的类对象。
二:Hibernate工作流程
(1)创建一个Configuration类实例
(2)加载Hibernate核心配置文件
(3)创建SessionFactory对象
(4)获取Session对象
(5)应用Session对象操作数据库
三:Hibernate核心接口
(1)Configuration接口
Configuration负责管理Hibernate的配置信息。
Configuration cfg=new Configuration().configure();
(2)SessionFactory接口
SessionFactory负责创建Session实例。
Configuration cfg=new Configuration().configure();SessionFactory sessionFactory=cfg.buildSessionFactory();
(3)Session接口
Session是Hibernate持久化操作的基础,提供了众多持久化方法,如save、update、delete、query等。
Configuration cfg=new Configuration().configure();SessionFactory sessionFactory=cfg.buildSessionFactory();Session session=sessionFactory.openSession();
(4)Transaction接口
当使用Session的save()、delete()、update()等操作时,都是在对Session的缓存进行操作,并没有直接操作数据库,Hibernate把这些操作用事务来控制,当调用事务的commit()方法时,才真正地执行数据库读写操作。
事务对象通过Session创建:
Configuration cfg=new Configuration().configure();SessionFactory sessionFactory=cfg.buildSessionFactory();Session session=sessionFactory.openSession();Transaction t=session.beginTransaction();
(5)Query接口
Query接口是Hibernate的查询接口,用于向数据库中查询对象,在它里面包装了一种HQL(Hibernate Query Language)查询语言,采用了新的面向对象的查询方式,是Hibernate官方推荐使用的标准数据库查询语言。
查询语句格式:
Query query=session.createQuery("from UserTable where id=1");List list=query.list();
参数设置方法有两种:
a.
Query query=session.createQuery("from UserTable where id=?");query.setInt(0,"要设置的值");或者query.setParameter(0,"要设置的值");//通用方法,任何类型参数
b.
Query query=session.createQuery("from UserTable where id=:idValue"); //idValue任取名字query.setInt("idValue","要设置的值");或者query.setParameter("idValue","要设置的值");//通用方法,任何类型参数
**当只需查询单个数据时:
Query query=session.createQuery("from Druginfo where drugid=?");query.setString(0, drugid);query.setMaxResults(1);Druginfo druginfo=(Druginfo)query.uniqueResult();
- Hibernate(一)---Hibernate简介
- hibernate 一 简介
- 一:Hibernate简介
- Hibernate 一 JDBC简介
- Hibernate七部曲(一)简介
- hibernate注解之简介(一)
- Hibernate(一)——简介
- Hibernate的一,二级缓存和lazy简介
- Hibernate 入门之Hibernate简介和体系结构(一)
- Hibernate 入门之Hibernate简介和体系结构(一)
- Hibernate入门篇(一)——Hibernate简介
- Hibernate简介
- Hibernate简介
- hibernate简介
- Hibernate简介
- hibernate 简介
- Hibernate简介
- Hibernate简介
- Pixhawk_Ardupilot_Makefile文件调用关系
- fir.im Weekly - 聊聊 Google 开发者大会
- Latex--入门系列三
- Mysql主从复制安装笔记
- Pascal's Triangle II
- 一:Hibernate简介
- 【redis】一、redis3.2.6安装介绍
- okhttp3连接websocket
- AFNetWorking的二次封装
- 【腾讯Bugly干货分享】让 CodeReview 这股清流再飞一会儿
- 使用org.apache.commons.io.FileUtils,IOUtils;工具类操作文件
- QT学习_DAY1
- 萌新学习笔记之线性表
- 操作系统ready pend subpend区别