Hibernate压缩文件结构
下载Hibernate压缩文档,下面为文件结构:
Hibernate3.jar:为Hibernate的核心jar包;
build.xml:重新打包配置文件
build.bat:运行在windows系统中打包;
build.sh:运行在Unix系统上打包;
doc:Hibernate API文档
eg:一个简单的实例
etc:Hibernate中需要使用的配置文件的模板
lib:Hibernate所需要使用的一些Jar包
src:Hibernate的源代码
test:测试代码(单元测试代码)
搭建Hibernate的使用环境:
1、 建立项目(我们这里建立Java Project)
例:hibernate_first
2、 引入hibernate所需要的jar包
利用User Library库引入jar包,以后项目如何需要使用这此jar包,只要引入这个库就可以了。
方法:
第一步: window→Preferences → Java → Build Path → User Libraries → “New” 按钮→ 然后输入库名→点击“OK”
第二步:加入所需要的
JAR包:点击“Hibernate3”项→“Add JARs…”按钮→在弹出的对话框选择需要的JAR包(hibernate3.jar、lib目录下的所有JAR包),还有数据库的JDBC驱动(例如Mysql驱动
)
为项目引入hibernate JAR库
右键项目→Properties→Java Build Path→右边点击”Libraries”选项卡→“Add Library…”按钮→User Library→”next”按钮→选中我们刚刚建的”Hibernate3 JAR库”→Finish→OK
3、 创建Hibernate的配置文件(hibernate.cfg.xml)
Hibernate支持两个格式的配置文件:hibernate.properties(不常用)和hibernate.cfg.xml(建意使用)
将hibernate.cfg.xml文件复制到ClassPath的根下(src目录下)(hibernate.cfg.xml位于hibernate_home/etc目录下)
<session-factory>
<!--
具体的配置信息可参见hibernate_home/etc/hibernate.properties相关配置项
如何要移植数据时,只要将下面数据库信息修改就可以了。
-->
<!-- 配置mysql数据库连接串 -->
<property name="hibernate.connection.url">jdbc:mysql://localhost:3036/hibernate_first</property>
<!-- 配置mysql数据库jdbc驱动 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<!-- 配置mysql数据库连接用户名 -->
<property name="hibernate.connection.username">root</property>
<!-- 配置mysql数据库连接用户密码 -->
<property name="hibernate.connection.password">root</property>
<!--配置数据库适配器(使用何中数据库)-->
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<!-- 是否显示hibernate的SQL语句 -->
<property name="hibernate.show_sql">true</property>
<!-- 配置实体类映射文件 位于property之后
映射文件要求为完整路径,目录之前使用/隔开
-->
<mapping resource="com/wjt276/hibernate/User.hbm.xml"/>
</session-factory>
4、 创建日志的配置文件(log4j.properties),为了便于调试最好加入log4j配置文件
将模板文件复制到ClassPath根下(src目录下)
为了不需要多于的提示信息,可以将此配置文件中一些配置项取消了。但要保留log4j.rootLogger=warn, stdout
5、 定义实体类
(Hibernate先定义实体类,再生成表)
例如:User实体类
6、 定义User类的映射文件(重要、关键)—User.hbm.xml
映射文件可位于任何位置,但一般位于实体类同一目录下。
映射文件是描述实体类和实体类的属性的。
源数据:描述实体类及实体类属性之间的关系的。
映射类标签:<classs></class>
<!--
class标签 实体类映射到数据表
* name属性:实体类的完整路径
* table属性:实体类映射到数据库中的表名,如果省略,则为实体类的类名称
-->
<class name="com.wjt276.hibernate.User" table="t_user">
<!-- 映射数据库主键 映射到数据表中的字段名默认为类属性名,但可以利用column重新指定-->
<id name="id" column="id">
<!-- generator设置主键生成策略
uuid:一万年内生成唯一的字符串
-->
<generator class="uuid"/>
</id>
<!-- property 映射普通属性 映射到数据表中的字段名默认为类属性名,但可以利用column重新指定-->
<property name="name" column="name"/>
<property name="password"/>
<property name="createTime"/><!-- Hibernate会自动根据实体类属性类型生成数据库表中字段类型 -->
<property name="expireTime"/>
</class>
7、 将User.hbm.xml文件加入到hibernate配置文件中(hibernate.cfg.xml),因为hibernate并不知道这个文件的存在。
<!-- 配置实体类映射文件 位于property之后
映射文件要求为完整路径,目录之前使用/隔开
-->
<mapping resource="com/wjt276/hibernate/User.hbm.xml"/>
------2009/10/16--------------
8、 使用hibernate工具类将对象模型生成关系模型(hbm to ddl)
(也就是实体类生成数据库中的表),完整代码如下:
package com.wjt276.hibernate;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
/**
* Hibernate工具<br/>
* 将对象模型生成关系模型(将对象生成数据库中的表)
* 把hbm映射文件转换成DDL
* 生成数据表之前要求已经存在数据库
* 注:这个工具类建立好后,以后就不用建立了。以后直接Copy来用。
* @author wjt276
* @version 1.0 2009/10/16
*/
public class ExportDB {
public static void main(String[] args){
/*
* org.hibernate.cfg.Configuration类的作用:
* 读取hibernate配置文件(hibernate.cfg.xml或hiberante.properties)的.
* new Configuration()默认是读取hibernate.properties
* 所以使用new Configuration().configure();来读取hibernate.cfg.xml配置文件
*/
Configuration cfg = new Configuration().configure();
/*
* org.hibernate.tool.hbm2ddl.SchemaExport工具类:
* 需要传入Configuration参数
* 此工具类可以将类导出生成数据库表
*/
SchemaExport export = new SchemaExport(cfg);
- 大小: 72.1 KB
- 大小: 11.8 KB
- 大小: 40.7 KB
分享到:
相关推荐
**标题解析:**“hibernate的第一个例子”表明这是一个关于Hibernate框架的基础教程,主要目标是展示如何使用Hibernate进行数据持久化操作。 **描述分析:**描述提到这是一个超级简单的例子,包含一个持久化对象...
11. **缓存机制**:Hibernate提供了第一级缓存(Session级别的缓存)和第二级缓存(SessionFactory级别的缓存),可以提高性能和减少数据库负载。 12. **集合映射**:Hibernate支持一对多、一对一、多对多等各种...
【hibernate第一个例子】 在Java开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作。本示例将引导初学者了解如何使用Hibernate进行简单的数据库连接和操作。 首先,我们需要...
Hibernate 是一个开源的O/R mappimg的框架,基于JDBC...另外还有两个东东,一个是class2hbm,与第一个相反,是根据class来导出映射文件的。还有一个ddl2hbm,是根据数据库来导出表结构,并生成映射文件和POJO class。
总的来说,"Struts Hibernate示例"是一个学习和理解这两者集成的好资源,可以帮助开发者掌握如何在实际项目中构建数据驱动的Web应用。通过分析和运行这个示例,开发者可以深入了解MVC模式、ORM理念,以及如何在Java ...
1. Hibernate概述:Hibernate是Java平台上的一个开源ORM框架,它允许开发者用面向对象的方式处理数据库操作,通过XML或注解来定义对象与数据库表之间的映射关系。 2. 安装与配置:学习Hibernate首先需要配置环境,...
1. **级联操作**:允许在一个操作中处理相关的实体,如`CascadeType.ALL`可将操作(保存、更新、删除)应用到所有相关实体。 2. **懒加载和集合关系**:通过懒加载,只在需要时才加载关联对象,减少不必要的数据库...
**hibernate示例** Hibernate 是一款开源的Java平台上的对象关系映射(ORM)框架,它极大地简化了数据库操作,使得开发人员可以使用面向对象的方式来处理数据,而无需关心底层SQL语句的编写。本示例将深入探讨...
【翰云cloudwave的hibernate示例】深入解析 在IT行业中,瀚云CloudWave是一款专注于云计算和大数据处理的平台,它提供了多种服务来帮助企业和开发者构建、部署和管理应用程序。而Hibernate作为一款强大的Java对象...
在这个“hibernate人生中第一个成功及完美程序”中,我们将深入探讨Hibernate的基本概念、核心功能以及如何构建一个简单的示例应用。 一、Hibernate概述 Hibernate是一个开源的ORM框架,它的主要任务是将Java对象与...
"第一个Hibernate代码, Hello Hibernate" 这个标题表明我们将要探讨的是一个初学者级别的Hibernate教程,可能是通过一个简单的项目或示例来介绍如何使用Hibernate框架。Hibernate是一个开源的对象关系映射(ORM)...
总的来说,这个示例项目为学习和理解如何在实际开发中整合WebWork、Spring和Hibernate提供了一个很好的实践平台。通过深入研究和调试这个项目,开发者可以更好地掌握这些框架的协同工作原理,从而提升自己的Java企业...
本示例中,“Spring Webwork Hibernate结合登录示例”展示的是如何整合这三个框架来实现一个完整的用户登录功能。下面将详细解释这个示例中的关键知识点: 1. **Spring框架**:Spring的核心是依赖注入,它允许...
《Java Persistence with Hibernate示例详解》 在Java开发领域,持久化是不可或缺的一部分,而Hibernate作为Java中最流行的ORM(对象关系映射)框架之一,它极大地简化了数据库操作。本篇将深入探讨“Java ...
在本文中,我们将深入探讨如何创建Hibernate的第一个例子,帮助初学者快速入门。** **一、Hibernate 简介** Hibernate 提供了丰富的API,简化了Java应用程序与关系数据库之间的交互。它通过XML配置文件或注解来定义...
Hibernate3是Hibernate系列的第三个主要版本,它提供了一个持久化模型,通过XML或注解方式将Java对象映射到数据库表,使得开发者可以进行面向对象编程而不是传统的SQL查询,提高了开发效率。 接下来,我们讨论C3P0...
Spring 提供了丰富的容器管理、依赖注入以及AOP(面向切面编程)等功能,而Hibernate则是一个强大的ORM(对象关系映射)框架,简化了数据库操作。下面将详细介绍如何进行这两者的整合以及相关的知识点。 一、Spring...
1. `Session.openSession()`用于打开一个新的会话。 2. `Session.save()`或`Session.persist()`用于保存新对象到数据库。 3. `Session.get()`或`Session.load()`用于根据ID获取对象。 4. `Session.update()`用于更新...
本文将带你一步步了解如何创建并运行你的第一个Hibernate程序,这是一个非常基础且详尽的教程,特别适合初学者理解Hibernate的核心概念。 首先,Hibernate是一个强大的对象关系映射(ORM)框架,它允许Java开发者在...
- 第一级缓存:每个Session都有一个第一级缓存,它是内部的、不可配置的,存储对象的状态。 - 第二级缓存:可选的,全局共享,可以提高性能,但需要处理并发问题。 8. **事务管理**: - Hibernate支持编程式和...