`
zhaoxu841020
  • 浏览: 58310 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论
  • chhbwf: 请问做过gwt的导出功能没?就是利用gwt显示在页面的html ...
    GWT
  • yangwn: 不感恭维GWT-EXT,只是觉得它是UI的支持还算可以,但是伟 ...
    GWT
  • lucky16: 这东西是得学习!
    数据库设计

hibernate学习

    博客分类:
  • J2EE
阅读更多
Hibernate数据持久化组件

对象持久化,把数据保存在永久的存储介质中(数据库)

OR/M(object relation mapping)对象关系映射。

POJO类(Plain Old Java Object),就是标准的Java Bean。

Hibernate就是一个可以自动的根据xml完成对象关系映射,并持久化到数据库的开源组件。

Hibernate的底层也是JDBC实现的。

Hibernate是通过xml文件的配置,对数据库的底层的方言,以及数据库连接所需的信息,以及连接数据库的驱动。Hibernate的系统配置文件的名字一般叫做hibernate.cfg.xml,映射类的配置文件的命名一般是类名.hbm.xml。一般将映射类的xml文件和实体类放在一起。

hibernate.cfg.xml中会设置数据库的连接信息,以及引用的其他文件的文件名,和一些其他的摄制。这个文件一般放在项目的根目录下。

在hibernate.cfg.xml的写法

<!DOCTYPE hibernate-configuration PUBLIC

     "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

     "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

     <session-factory>

     <property name="show_sql">true</property><!--显示sql语句-->

     <property name="format_sql">true</property><!--使显示的sql语句格式化-->

     <property name="dialect">....</property><!--使用的数据库方言信息-->

        <property name="connection.driver_class">....</property>

     <!--使用的数据库的驱动-->

     <property name="connection.url">....</property><!--连接数据库使用的url-->

        <property name="connection.username">...</property>

     <!--连接数据库的用户名-->

     <property name="connection.password">...</property>

     <!--连接数据库的密码-->

     <mapping resource="xxx/xxxx/Xxxxxx.hbm.xml"/>

     <!—引入映射文件,要写类的映射的xml文件的全路径及文件名-->

     </session-factory>

</hibernate-configuration>

Hibernate中类的映射的XXXX.hbm.xml的写法

<?xml version="1.0" encoding="gbk"?>

<!DOCTYPE hibernate-mapping PUBLIC

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

     "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping package="XXX.XXX.XXX"><!--映射类所在的包-->

     <class name="Xxxxxx" table="Xxxxx"><!--将类和数据库的表联系起来-->

         <id name="studentId" column="studentId"><!--主键生成策略-->

              <generator class="assigned"/>

              <!--指定主键生成策略为用户指定-->

            <!--还可以指定其他的主键声称策略-->

         </id>

         <property name="XXX" column="XXXX" type="string"/>

         <!--类中的书性和字段之间建立联系-->

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

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

         <property name="brithday" column="brithday" type="data"/>

        <!--在hibernate中其他类型可以自动识别只有Data类型必须指名-->

    </class>   

</hibernate-mapping>


使用Hibernate编程步骤

1,配置环境,加载Hibernate的jar文件,以及连接数据库连接使用的jar文件,并配置CLASSPATH环境变量。

2,写hibernate所需的配置文件,hibernate.cfg.xml ,Xxxxx.hbm.xml

3,写POJO类

4,调用hibernate类中的方法。

    1)使用Configuration对象的buildSessionFactory()方法创建SessionFactory对象

    2)使用SessionFactory对象openSession()方法创建Session对象。

3)使用Session的相应方法来操作数据库,将对象信息持久化到数据库。


获得Session实现类对象的工厂

import org.hibernate.HibernateException;

import org.hibernate.Session;

import org.hibernate.cfg.Configuration;

public class HibernateSessionFactory {

     private static final Configuration cfg = new Configuration();

     private static SessionFactory sessionFactory=null;

     public static Session getSession() throws HibernateException {

              try {
                       cfg.configure();

                       sessionFactory = cfg.buildSessionFactory();

                   } catch (Exception e) {

                       e.printStackTrace();

                   }
              }
         }

         return session;

     }

     public static void closeSession() throws HibernateException {

         Session session = (Session) threadLocal.get();

         threadLocal.set(null);

         if (session != null) {

              session.close();

         }

     }

     private HibernateSessionFactory() {

     }

}
分享到:
评论

相关推荐

    hibernate学习资料大全

    【hibernate学习资料大全】 Hibernate 是一个开源的对象关系映射(ORM)框架,它极大地简化了Java应用程序对数据库的操作。这个压缩包包含了丰富的Hibernate学习资源,旨在帮助开发者深入理解和熟练掌握这一强大的...

    Hibernate学习.pdf

    ### Hibernate学习知识点详解 #### 1. Hibernate简介与安装配置 **标题:** Hibernate学习 **描述:** Hibernate 学习 Hibernate学习.pdf **标签:** Hibernate 学习 Hibernate学习.pdf **知识点详解:** ####...

    Hibernate学习笔记整理

    Hibernate学习笔记整理 以下是 Hibernate 框架的详细知识点: Hibernate 介绍 Hibernate 是一个 ORM(Object-Relational Mapping)框架,用于将 Java 对象映射到数据库表中。它提供了一个简洁的方式来访问和操作...

    Hibernate学习笔记特别详细

    《Hibernate学习笔记特别详细》 Hibernate,作为一款开源的Object-Relational Mapping(ORM)框架,为Java开发者提供了强大的数据库操作支持。它简化了数据库访问的复杂性,使得开发人员可以像操作对象一样操作...

    Hibernate学习文档集合

    《Hibernate学习文档集合》 Hibernate,作为Java领域中的一款强大且广泛应用的对象关系映射(ORM)框架,极大地简化了数据库操作。本集合包含了三个关键的学习文档,分别关注于Hibernate的操作基础、对象关系映射和...

    hibernate学习资料大合集

    **hibernate学习资料大合集** 本资料合集涵盖了关于Hibernate的各种学习资源,包括PDF、CHM和Word文档,旨在帮助开发者深入理解和掌握Hibernate这一强大的Java持久化框架。Hibernate作为一个对象关系映射(ORM)...

    非常好的Hibernate学习资料

    《Hibernate学习精华》 Hibernate,一个开放源代码的对象关系映射框架,是Java开发者在数据库操作中不可或缺的工具。它简化了Java应用与数据库之间的交互,使得开发人员能够以面向对象的方式来处理数据库操作,极大...

    hibernate学习笔记,学习大纲【吐血推荐】

    **Hibernate学习笔记与大纲** Hibernate 是一款开源的Java语言下的对象关系映射(ORM)框架,它极大地简化了数据库操作,使得开发人员可以使用面向对象的方式处理数据,而无需过多关注底层的SQL语句。本笔记将深入...

    hibernate学习笔记第四天的源码

    **hibernate学习笔记第四天源码解析** 在hibernate学习的过程中,第四天通常会深入探讨实体类、映射文件、配置文件以及查询语言等方面的内容。这些是hibernate框架的基础,也是开发者掌握持久化操作的关键。让我们...

    hibernate学习文档

    《Hibernate学习文档》 Hibernate是一种广泛应用于Java开发中的对象关系映射(ORM)框架,它的核心价值在于简化了数据库操作,通过将Java对象模型与SQL关系模型进行映射,使得开发者可以使用面向对象的方式来处理...

    hibernate学习心得

    对于初学者来说,学习 Hibernate 可以简化数据库操作,提高开发效率。以下是对 Hibernate 学习过程的详细说明: 一、配置 Hibernate 与 MyEclipse 连接 在开始使用 Hibernate 之前,你需要先配置 Hibernate 与...

    hibernate学习笔记

    在本篇《Hibernate学习笔记》中,我们将深入探讨Hibernate这一流行的Java对象关系映射(ORM)框架。Hibernate允许开发者以面向对象的方式处理数据库操作,极大地简化了数据存取的复杂性。以下是一些关键知识点: 1....

    Hibernate学习笔记

    Hibernate学习笔记 Hibernate学习笔记 Hibernate学习笔记 Hibernate学习笔记

    Java相关课程系列笔记之十四Hibernate学习笔记

    【Java相关课程系列笔记之十四Hibernate学习笔记】 Hibernate是一个开源的对象关系映射(ORM)框架,它极大地简化了Java应用程序对数据库的操作。本笔记将详细阐述Hibernate的核心概念、使用方法和特性。 一、...

    hibernate学习总结文档

    **Hibernate 框架概述** Hibernate 是一个开源的对象关系映射(ORM)框架,它为 Java 开发者提供了一种在 Java 应用程序中管理关系...通过实践和深入学习,你可以更好地利用 Hibernate 实现高效、可靠的数据库应用。

    hibernate学习资料

    在“hibernate学习资料”中,我们可以看到两个关键文件:“hibernate┐≥╝▄┐¬╖ó2016░µ╫╩┴╧”和“hibernate框架开发2016版资料”。这些文件很可能是针对Hibernate框架的教程或指南,可能包含了2016年时的...

    Hibernate学习代码示例

    这个“Hibernate学习代码示例”压缩包文件为初学者提供了丰富的学习资源,帮助他们理解并掌握Hibernate的核心概念和实际应用。 首先,让我们详细探讨一下Hibernate的基础知识。Hibernate是一个开源的ORM框架,它的...

Global site tag (gtag.js) - Google Analytics