博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hibernate简介以及简单配置
阅读量:5877 次
发布时间:2019-06-19

本文共 2001 字,大约阅读时间需要 6 分钟。

Hibernate简介:

  Hibernate是一个开源对象关联关系映射的框架,他对JDBC做了轻量级的封装,使我们可以通过面向对象的思想操作数据库。

  为什么要用Hibernate:

    1: 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码

    2:它是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现,它很大程度的简化了dao层编码工作。

        ORM:对象关系映射。简单来说就是java对象与数据库字段名的映射关系

    3:Hibernate使用java反射机制,而不是字节码增强程序来实现透明性

    4:它是一个轻量级框架,并支持各种关系型数据库,支持一对一、一对多、多对一、多对多的各种复杂关系。

  Hibernate核心控件:                              //注:核心控制也就是基本工作流程

    1:Configuration:负责配置并启动Hibernate,创建SessionFactory对象;

    2:SessionFactory:负责初始化hibernate,创建Session对象;

    3:Session:负责被持续化对象CRUD操作;

    4:Transaction:负责事务的相关操作;

    5:Query和Criteria接口:负责执行各种数据库查询

  工作流程(实现简单配置):

    1:通过Configuration对象读取并解析配置文件(hibernate.cfg.xml :主要配置Hibernate相关参数)

1   
2
3
com.mysql.jdbc.Driver
    
4
jdbc:mysql:///hibernateTest
      
5
root
                 
6
yezi
                 
7 8
9
true
10
11
true
12
13
org.hibernate.dialect.MySQLDialect
14 15
16
17

 

    2:读取并解析映射信息,创建SessionFactory对象

    3:打开Session(会话)

    4:创建事务Transaction

    5:持久化操作,对对象进行CRUD操作

    6:提交事务

    7:关闭Session和SessionFactory对象   

1 Configuration config = new Configuration().configure();             // Hibernate框架加载hibernate.cfg.xml文件,获取Configuration对象 2 SessionFactory sessionFactory = config.buildSessionFactory();          //获取sessionFactory对象 3 Session session = sessionFactory.openSession();                  //打开会话,获取Seeion对象 4 // 开启事务 5 Transaction transaction = session.beginTransaction();              //开启事务 6  7 // 操作 8 session.save(c);                                    //通过Session对象进行操作 9 10 // 事务提交11 // session.getTransaction().commit();12 transaction.commit();13 session.close();14 sessionFactory.close();

转载于:https://www.cnblogs.com/EmilZs/p/9219077.html

你可能感兴趣的文章
11G数据的hive初测试
查看>>
如何使用Core Text计算一段文本绘制在屏幕上之后的高度
查看>>
==和equals区别
查看>>
2010技术应用计划
查看>>
XML 节点类型
查看>>
驯服 Tiger: 并发集合 超越 Map、Collection、List 和 Set
查看>>
Winform开发框架之权限管理系统改进的经验总结(3)-系统登录黑白名单的实现...
查看>>
Template Method Design Pattern in Java
查看>>
MVC输出字符串常用四个方式
查看>>
LeetCode – LRU Cache (Java)
查看>>
JavaScript高级程序设计--对象,数组(栈方法,队列方法,重排序方法,迭代方法)...
查看>>
【转】 学习ios(必看经典)牛人40天精通iOS开发的学习方法【2015.12.2
查看>>
nginx+php的使用
查看>>
在 ASP.NET MVC 中使用异步控制器
查看>>
SQL语句的执行过程
查看>>
Silverlight开发历程—动画(线性动画)
查看>>
详解Linux中Load average负载
查看>>
HTTP 协议 Cache-Control 头——性能啊~~~
查看>>
丢包补偿技术概述
查看>>
PHP遍历文件夹及子文件夹所有文件
查看>>