`

Hibernate简介

阅读更多
1. Hibernate简介

Hibernate官网:http://hibernate.org

版本:hibernate-release-4.3.5.Final

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随意的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
ORM框架,对象关系映射(Object/Relation Mapping)。

   
2. Jar包导入,右键buildPath

1) hibernate jar包

antlr-2.7.7.jar
dom4j-1.6.1.jar
hibernate-commons-annotations-4.0.4.Final.jar
hibernate-core-4.3.5.Final.jar
hibernate-jpa-2.1-api-1.0.0.Final.jar
jandex-1.1.0.Final.jar
javassist-3.18.1-GA.jar
jboss-logging-3.1.3.GA.jar
jboss-logging-annotations-1.2.0.Beta1.jar
jboss-transaction-api_1.2_spec-1.0.0.Final.jar

2) mysql jar包

mysql-connector-java-3.1.12-bin.jar


3. HelloWorld实现

新建项目Hibernate01

Student.java

package com.andrew.model;
public class Student {
    private long id;
    private String name;
    public long getId() {
        return id;
    }
    public void setId(long id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

Student.hbm.xml

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.andrew.model">
    <class name="Student" table="t_student">
        <id column="stuId" name="id">
            <generator class="native"/>
        </id>
        <property generated="never" lazy="false" name="name"/>
    </class>
</hibernate-mapping>

hibernate.cfg.xml

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <!-- 数据库连接设置 -->
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.url">jdbc:mysql://localhost:3306/hibernate4</property>
        <property name="connection.username">root</property>
        <property name="connection.password">root</property>
        <!-- 方言 -->
        <property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
        <!-- 控制台显示SQL -->
        <property name="show_sql">true</property>
        <!-- 自动更新表结构 -->
        <property name="hbm2ddl.auto">update</property>
        <!-- Mapper -->
        <mapping resource="com/andrew/model/Student.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

StudentTest.java

package com.andrew.service;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import com.andrew.model.Student;
public class StudentTest {
    public static void main(String[] args) {
        // 1. 实例化配置文件
        Configuration configuration = new Configuration().configure();
        // 2. 实例化服务登记
        ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build(); 
        // 3. 获取Session工厂
        SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
        // 4. 生成一个session
        Session session = sessionFactory.openSession();
        // 5. 开启事务
        session.beginTransaction();

        Student s = new Student();
        s.setName("张三");
        session.save(s);
        
        // 6. 提交事务
        session.getTransaction().commit();
        // 7. 关闭session
        session.close();
        // 8. 关闭session工厂
        sessionFactory.close();
    }
}

运行结果:
Hibernate: insert into t_student (name) values (?)
分享到:
评论

相关推荐

    hibernate简介

    【hibernate简介】 Hibernate 是一个广泛应用于Java开发领域的开源对象关系映射(ORM)框架。它的出现旨在解决Java程序员在使用JDBC操作数据库时面临的繁琐低效问题,通过提供面向对象的API,使得开发者可以以更加...

    hibernate简介及特例

    【Hibernate简介及特性】 Hibernate是一个Java开发中的对象关系映射(ORM)框架,它提供了将数据库操作转化为面向对象的方式,让开发者可以更加便捷地进行数据持久化操作。Hibernate基于JDBC,但对JDBC进行了封装,...

    Hibernate简介与快速入门

    ### Hibernate简介与快速入门 #### 一、Hibernate概述 Hibernate是一种强大的开源对象关系映射(ORM)框架,它提供了一种高效的方式将面向对象的数据模型映射到关系型数据库的表结构中。Hibernate最初由Gavin King...

    [VIP][强化]J2EE第一期 Hibernate专题 第一讲 Hibernate简介源码

    【J2EE与Hibernate简介】 在Java企业级应用开发领域,J2EE(Java 2 Platform, Enterprise Edition)是一个标准的平台,它提供了一个统一的框架来构建分布式、多层的应用程序。J2EE涵盖了服务器端组件模型、数据库...

    hibernate简介及优缺点

    一.持久化:将内存中的瞬时态数据保存成数据库中持久态数据的操作 1.瞬时态:以new命令实例化后从未用session将其与数据库关联(保存)过的... 2.Hibernate映射文件:Hibernate映射文件是Hibernate与数据库进行持久化的桥梁

    Hibernate简介.doc

    **Hibernate 概述** Hibernate 是一个开放源代码的 Java 库,它提供了对象关系映射(ORM)解决方案,使得开发者可以使用面向对象的方式来操作数据库,而无需关心底层的 SQL 语句。ORM 解决了传统应用程序中面向对象...

    移动商务应用软件开发第8章Hibernate简介及功能实现.ppt

    移动商务应用软件开发第8章Hibernate简介及功能实现.ppt

    hibernate知识简介.ppt

    5. **Hibernate简介** Hibernate 是最受欢迎的ORM框架之一,因其灵活性和高效性而备受青睐。它提供了丰富的API和配置选项,支持多种数据库,包括事务管理、第二级缓存等功能。由于其活跃的社区支持和持续的更新,...

    Hibernate入门到精通

    Hibernate 简介 Hibernate 是一个开源的Java Persistence Framework,它提供了一种对象关系映射的解决方案,帮助开发者轻松地访问和操作关系数据库。Hibernate 的主要特点是:支持多种数据库管理系统、提供了高效的...

    JAVA学习资料-Hibernate简介.doc

    **核心接口简介** 1. **Session接口**:Session是与数据库交互的主要接口,它负责执行持久化对象的创建(Create)、读取(Read)、更新(Update)和删除(Delete)操作。由于Session不是线程安全的,所以在多线程...

    JAVA Hibernate 简介 ppt

    本人所有资源完全原创,此文可以作为新手入门之砖,也可以作为老人的茶余饭后。欢迎下载。联系我:shansun123@126.com

    教育移动商务应用软件开发第8章Hibernate简介及功能实现.ppt

    【教育】移动商务应用软件开发第8章主要探讨的是Hibernate框架在JavaEE环境下的应用,这是构建现代企业级移动商务应用程序的重要技术之一。本章旨在让学习者掌握使用Hibernate进行数据持久化的技能,以及理解软件...

    hibernate 重点知识原创

    一、hibernate 简介 Hibernate 是一个流行的 Java 应用程序框架,主要用于简化对象关系映射(ORM)的过程。它允许开发者使用面向对象的方式来操作数据库,通过自动映射数据库表为 Java 对象,从而避免了手动编写 ...

    基于hibernate的简单留言本

    【hibernate简介】 Hibernate是一个开源的Java框架,主要用于简化企业级应用中的对象关系映射(Object-Relational Mapping,ORM)。它允许开发者将数据库操作转换为对Java对象的操作,从而降低了开发人员处理SQL和...

    hibernate实现动态SQL查询

    一、Hibernate简介 Hibernate作为一款强大的持久层框架,它简化了Java应用程序与数据库之间的交互。通过对象-关系映射(ORM),Hibernate可以自动将Java对象转化为数据库中的记录,并反之。这样,开发者无需编写大量...

    hibernate系列(一)hibernate入门

    Hibernate简介** Hibernate是由 Gavin King 创建的一个开源项目,它实现了JPA(Java Persistence API)规范,提供了一种在Java应用中持久化对象的机制。通过Hibernate,我们可以避免编写大量的SQL语句,而是通过...

    hibernate基础 入门/ hibernate basic

    #### 二、Hibernate简介及其重要性 **Hibernate** 是一款开源的对象关系映射框架,它允许开发者以透明的方式处理持久化POJO(Plain Old Java Object)。Hibernate的核心优势在于它能够自动处理对象与关系型数据库...

Global site tag (gtag.js) - Google Analytics