您的位置:首页 > 其它

三大框架---hibernate框架基础笔记(个人理解,环境搭建及api)--一

2017-12-14 22:02 633 查看


一.Hibernate的理解:

Hibernate就是一个持久层的ORM的框架。对JDBC做了封装

                           只要java代码想连接上数据库,就一定要使用jdbc

                           使用hibernate主要是对数据库进行增删改查

三大框架与三层思想的关系:

      三大框架struts2、spring、hibernate主要是对每一层整体的封装。

      Struts2封装了web层,即控制层;spring封装了service层,即业务逻辑层;hibernate封装了dao层,即持久层。

      ORM(Object Relation Mapping)对象关系映射框架,市面上有很多种,而企业中比较常用的有hibernate、mybatis等。我们主要讲hibernate。

      使用hibernate封装后,带给我们的便利:

二.Hibernate框架的环境搭建:

      需要倒的jar包:(16个)

               
将hibernate的开发环境包:hibernate-release-5.0.7.Final.zip

                           解压后的效果:

                           documentation           
:Hibernate的开发规范和文档

                           lib          
       :Hibernate的开发使用的jar包(重点关注 requiredoptional)

                           project                 
:Hibernate的提供测试的工程。

                               

                           

                           hibernate-release-5.0.7.Final\ lib \ required \ * 
所有包

                           

                           hibernate-release-5.0.7.Final\ lib \ optional \ c3p0 \ *
所有包

 

                           hibernate在运行的过程中会加载一个日志包 

                                                
企业开发用的日志包: apacha-log4j.jar

 

                           required下面的所有包:9个

                           c3p0下面的所有包:3个

                           apache提供的日志包:3个

                           要连接的数据库驱动包(mysql) 1个

 

                           hibernate的环境搭建:16个jar包

 

 

创建配置文件:类名.hbm.xml(建议使用)

查找约束(hibernate.core/hibernate-mapping-3.0.dtd)

<?xml version="1.0"encoding="UTF-8"?>

<!DOCTYPEhibernate-mappingPUBLIC

   "-//Hibernate/Hibernate Mapping DTD 3.0//EN"

   "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

将类与表建立映射关系

建立类中的属性与表中的字段的映射

其他的属性都是用property建立映射

示例:

<hibernate-mapping>

<classname="com.itheima.hibernate.domain.Customer"table="cst_customer">

<id name="cust_id"column="cust_id">

           <!--
主键生成策略: -->

           <generator
class="native"/>

       </id>

       <property
name="cust_name"column="cust_name"/>

       <property
name="cust_source"column="cust_source"/>

       <property
name="cust_industry"column="cust_industry"/>

       <property
name="cust_level"column="cust_level"/>

       <property
name="cust_phone"column="cust_phone"/>

       <property
name="cust_mobile"column="cust_mobile"/>

   </class>

</hibernate-mapping>

创建数据库的核心配置文件

要求:文件的名字必须是:hibernate.cfg.xml  而且必须要放在src下面

查找约束(hibernate.core/ hibernate-configuration-3.0.dtd)

数据库的驱动

地址

用户名

密码

使用数据库的方言

C3p0(告诉数据库使用的c3p0连接池)

(以上几步基本是固定的)

控制台显示sql语句

将显示格式化

加载映射文件

让hibernate在数据库自动生成映射表(一般使用update)

使用hibernate提供的API

加载数据库的核心配置文件(引入映射文件)

Ps:需要注意的是,我们现在没有接触spring,所以要手动提交事务,不然sql语句不会执行。

Configuration configuration = new Configuration();

configuration.config();

获取sessionFactory(相当于连接池)

SessionFactory sessionFactory = Configuration.buildSessionFactory();

获取session对象(相当于连接)

Session session = sessionFactory.openSession();

开启事务

Transaction tx =session.beginTransaction();

操作增删改查

提交事务

tx.commit();

关闭连接

session.close();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: