`

Hibernate入门

 
阅读更多

1. Hibernate简介
(1) Hibernate是一款ORM框架. Object Relation Mapping
(2) ORM是指对象关系映射.可以将DB映射成Object,这样程序员可以通过
对Object操作完成对DB的操作.将JDBC封装在ORM框架底层
(3)主流ORM框架有Hibernate,iBatis,JPA
2. Hibernate框架体系结构
(1)主配置文件:用于描述数据库连接信息.
hibernate.cfg.xml或者hibernate.properties
(2)映射描述文件:用于描述映射类及属性与DB表和字段之间的对应关系
User.hbm.xml
(3)映射类文件:User.java
(4)主要API组件
a. Configuration:用于加载主配置文件,获取数据库连接信息
b. SessionFactory:用于创建Session对象,封装了映射信息以及与定义的SQL
c. Session:用于对象操作.完成增加,删除,修改,查询操作.
d.Transaction:用于事务处理.进行增加,删除,修改时需要使用.
因为Hibernate中自动提交功能是关闭的.
e.Query:用于执行HQL查询语句.
HQL属于面向对象查询语句,语句中没有表名和字段名

1.导包
2.在src下新建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="connection.username">root</property>
<property name="connection.password">root</property>
<property name="connection.url">jdbc:mysql://localhost:3306/user</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>
<mapping resource="db/mapping/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
3.建立User.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="db.daomain">
<class name="User" table="duser">
<id name="id" type="integer">
<generator class="native"></generator>
</id>
<property name="name" type="string">
<column name="name"></column>
</property>
<property name="pwd" type="string">
<column name="pwd"></column>
</property>
</class>
</hibernate-mapping>
4.一般步骤

Configuration conf = new Configuration();
conf.configure();//加载hibernate.cfg.xml配置文件
SessionFactory sf = conf.buildSessionFactory();//获取SessionFactory实例
session = sf.openSession();//获取session
Transaction trans=session.beginTransaction();得到事务
session.save(user);//插入user session.get(user.class,5)查询或session.load(user.class,6)load是延迟加载用的时候才执行sql语句
trans.commit();提交事务
增删改查:

public static void add(User user){
Session session=HibernateSessionUtil.getSession();
Transaction trans=session.beginTransaction();
session.save(user);
trans.commit();
HibernateSessionUtil.closeSession();
}
public static User findById(int id){
Session session=HibernateSessionUtil.getSession();
User user=(User) session.get(User.class, id);
//User user=(User) session.load(User.class,id)用的时候才加载,因为用的时候session已关闭报异常
session.close();
return user;
}
public static void update(User user){
Session session=HibernateSessionUtil.getSession();
Transaction t=session.beginTransaction();
session.update(user);//根据user的id来更新
t.commit();
session.close();
}
public static void delete(int id){
User user=findById(9);//注意顺序
Session session=HibernateSessionUtil.getSession();
Transaction tsa=session.beginTransaction();
session.delete(user);
tsa.commit();
session.close();
}

分享到:
评论

相关推荐

    Hibernate入门到精通

    "Hibernate入门到精通" Hibernate 是一个基于Java的ORM(Object-Relational Mapping,对象关系映射)框架,它提供了一种简洁高效的方式来访问和操作关系数据库。下面是 Hibernate 的主要知识点: Hibernate 简介 ...

    Hibernate入门jar包

    本压缩包提供的是Hibernate入门所需的jar包,包括了Hibernate的核心库以及与之配合使用的相关组件。让我们深入探讨一下这些jar包以及它们在Hibernate中的作用。 1. Hibernate核心库: - `hibernate-core.jar`:这...

    Hibernate入门案例源码

    【Hibernate入门案例源码】是针对初学者设计的一份教程,旨在帮助理解并掌握Java持久化框架Hibernate的基础应用。Hibernate是一个强大的ORM(对象关系映射)框架,它简化了数据库与Java对象之间的交互,使开发者可以...

    Hibernate入门(代码+笔记)

    **Hibernate入门** Hibernate是一款强大的Java持久化框架,它简化了数据库与Java对象之间的交互,使得开发者无需编写大量的SQL语句,就能实现数据的增删改查。本教程将分为五个部分,逐步深入Hibernate的世界。 **...

    初学hibernate,hibernate入门

    **初学Hibernate,Hibernate入门** Hibernate是一个开源的对象关系映射(ORM)框架,它为Java开发者提供了方便的数据持久化服务。在Java应用中,通过Hibernate,开发者可以将数据库操作抽象成对象模型,使得代码...

    hibernate入门小例子

    【hibernate入门小例子】是一个适合初学者的教程,主要涵盖了如何在JavaWeb项目中使用Hibernate框架与MySQL数据库进行集成。在这个例子中,我们将会深入理解Hibernate的核心概念,包括实体映射、对象关系映射(ORM)...

    hibernate入门

    **hibernate入门** Hibernate 是一个强大的Java持久化框架,它简化了数据库操作,使得开发者无需直接编写SQL语句即可实现对象与关系数据库之间的映射。这个文档将带你步入Hibernate的世界,了解其基本概念和核心...

    hibernate入门--第一个实例

    【hibernate入门--第一个实例】 Hibernate 是一个强大的对象关系映射(ORM)框架,它为Java开发者提供了方便的数据持久化服务。通过使用Hibernate,我们可以将数据库操作转换为对Java对象的操作,从而简化了数据库...

    Hibernate入门到精通.pdf

    《Hibernate入门到精通》这本书是针对Java开发人员深入学习Hibernate框架的一份宝贵资源。Hibernate是一个开源的对象关系映射(ORM)框架,它极大地简化了Java应用程序与数据库之间的交互。通过使用Hibernate,...

    Hibernate入门教程.pdf

    ### Hibernate入门教程知识点详解 #### 一、Hibernate框架简介 **Hibernate** 是一款开放源代码的**对象关系映射(Object-Relational Mapping,简称ORM)**框架,它为Java应用提供了一种高效的机制,用于处理Java...

    struts+hibernate入门实例(eclipse版)

    ### Struts + Hibernate 入门实例(Eclipse 版) #### 一、开发环境搭建 在本章节中,作者朱千平将引导我们完成开发环境的搭建,包括以下几个步骤: 1. **下载安装Eclipse**: Eclipse 是一个开源的集成开发环境...

    史上最简单的Hibernate入门简介

    其实Hibernate本身是个独立的框架,它不需要任何web server或application server的支持。然而,大多数的Hibernate入门介绍都加入了很多非Hibernate的东西,看了这个希望能给你点启示!

    hibernate入门实例操作步骤

    **hibernate入门实例操作步骤** Hibernate是一款强大的Java对象关系映射(ORM)框架,它极大地简化了数据库操作,使得开发者可以使用Java对象的方式处理数据库事务。本篇将详细介绍Hibernate入门实例的操作步骤,...

    hibernate入门简单实例

    以下是关于Hibernate入门的一些关键知识点: 1. **对象关系映射(ORM)**:ORM是将数据库中的表映射为Java类的过程,通过这种方式,我们可以使用面向对象的编程方式来操作数据,而无需直接编写SQL语句。 2. **...

    hibernate教程,hibernate入门

    **Hibernate 教程:带你入门持久化框架** Hibernate 是一个流行的开源对象关系映射(ORM)框架,它为 Java 应用程序提供了便捷的数据持久化服务。本教程将引导你逐步了解 Hibernate 的基本概念、安装配置以及核心...

    02_传智播客hibernate教程_hibernate入门案例的细节分析

    【标题】:“02_传智播客hibernate教程_hibernate入门案例的细节分析” 在本教程中,我们将深入探讨Hibernate,一个流行的Java对象关系映射(ORM)框架,它简化了数据库操作,使开发者可以更加专注于业务逻辑而不是...

Global site tag (gtag.js) - Google Analytics