返回首页

JAVA持久层框架Hibernate环境配置和使用

时间:2012-12-17 13:55来源:知行网www.zhixing123.cn 编辑:麦田守望者

最近

  最近继续瞎忙乎,接手了开学的第三个网站项目。应要求做一个红酒商城,开价800,所以一直在修改模板增添美化页面。修改到今天基本要完工了。再说明天周 六了,晚上打算做个休息调整,再加上今天媳妇回家了,走将近半个多月,晚上没啥心情继续做,所以更新下博客,走访走访朋友们!今天的题目,估计很多朋友又 看不懂了,不扯淡了,切入正题……

Hibernate是啥

  作为三大主流框架的Hibernate,在整个网站中作为了持久层。即,将对象持久化到数据库,对数据库进行操作。Hibernate是一个独立的对象-关系映射(ORM)持久化框架,本身不依赖于WEB服务器而存在。

配置Hibernate工作环境

  工欲善其事必先利其器,在开始进行Hibernate开发之前,必须学会搭建Hibernate环境。首先下载必要的工具。


Hibernate3   下载地址:http://www.hibernate.org/downloads


Mysql的JDBC驱动    下载地址:http://www.mysql.com

  一步一步开始安装配置:

  一:安装Mysql数据库

  安装Mysql数据库作为学习测试。安装方法不说了,你懂的……

  二:导入Jar包

  Eclipse中新建一个“Java Project”,工程名叫做“Hibernate_First”,并且将“Mysql的JDBC驱动jar包”,解压hibernate安装包后得到的 “hibernate3.jar”以及hibernate的lib库下所有的jar包。如果你问我如何向工程中导入jar包的话,我劝你还是先看看 java基础再看本篇文章吧。

JAVA持久层框架Hibernate环境配置和使用1

导入jar包

  三:创建持久化类

  我们创建一个User对象,它使用普通的Java对象来封装,添加相应的属性,并提供相应的get和set方法就可以:

package com.java50.www.hibernate;
import java.util.Date;
public class User {
private String id;
private String username;
private String password;
private Date createTime;
private Date expireDate;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getExpireDate() {
return expireDate;
}
public void setExpireDate(Date expireDate) {
this.expireDate = expireDate;
}
}

User对象拥有了ID标识、姓名、密码、创建时间和销毁时间。

  四:创建对象-关系映射文件

  User.hbm.xml和User位于同一目录,配置代码为;

<?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>
<class name="com.java50.www.hibernate.User">
<id name="id">
<generator class="uuid" />
</id>
<property name="username" />
<property name="password" />
<property name="createTime" />
<property name="expireDate" />
</class>
</hibernate-mapping>

  其中,所有配置都写在<hibernate-mapping>标签之间,<class>来找到对应的持久化对象,使用ID作为了 主键,通过设置 <generator class="uuid" />使得id使用uuid的方式来赋值,具体后面会将。其它属性使用<property>做了配置。

 五:创建Hibernate配置文件hibernate.cfg.xml

  完全可以参照hibernate自带的演示程序。

<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.url">jdbc:mysql://localhost/test</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">phpwind.net</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<mapping resource="com/java50/www/hibernate/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>

<property name="hibernate.connection.url">指向驱动的url

<property name="hibernate.connection.driver_class">指向驱动类,相当于Class.Forname()

<property name="hibernate.connection.username">数据库用户名

<property name="hibernate.connection.password">数据库密码

<property name="hibernate.dialect">数据库方言

<mapping resource="com/java50/www/hibernate/User.hbm.xml"/>将对象-关系映射文件加载进来


 

需要注意的是,对于数据库配置方言,上文指定了使用MYSQL数据库,Hibernate提供了非常多的数据库方言,例如连接SQL的 org.hibernate.dialect.SQLServerDialect和连接Oracle的 org.hibernate.dialect.OracleDialect等……

  六:工具类到处配置信息到数据库

  上文已经将对象-关系映射关系配置好,那么如果使用Hibernate导入这些表,字段的信息呢?创建一个工具类Export.java

package com.java50.www.hibernate;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
public class Export {
public static void main(String[] args) {
//读取hibernate.cfg.xml文件
Configuration cfg = new Configuration().configure();
SchemaExport export = new SchemaExport(cfg);
export.create(true, true);
}
}

执行后,可以看得到,Hibernate成功的在我们的MYSQL数据库中的test数据库创建了User这个表:

JAVA持久层框架Hibernate环境配置和使用2

MYSQL数据库中得到了User表

  那么至此已经成功的配置了hibernate环境,并且连接到了数据库成功创建了一张表,以后我会将,使用Hibernate对数据库进行增删改查。希望大家再接再厉,努力学习……

------分隔线----------------------------
标签(Tag):Java JAVA龙8国际平台入口 JAVA基础教程 Java源代码 Java技巧
------分隔线----------------------------
推荐内容
  • 如何安装oracle 10g数据库 oracle 10g安装图解

    特意为大家制作了一份 oracle 10g安装图解 ,这样大家在安装的时候就不会出错了,至于...

  • Eclipse 如何安装Spring IDE支持

    ECLIPSE ARCHIVE离线安装包 SIZE 4.6 springsource-tool-suite-3.8.1.RELEASE-e4.6-up...

  • Eclipse 初始设置图解教程

    一、自动补全 .abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 二、字体设置 ...

  • idear如何配置JRebel实现热部署

    习惯写PHP之后,发现写JavaEE最蛋疼的是每次修改完代码,需要重启Tomcat服务,当项目...

  • java常用设计模式原型模式及深浅拷贝

    原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的...

  • java中单例模式的4种实现方式

    单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式...

  • 猜你感兴趣
  • 教育技术学动态
  • 教育技术学论文
  • 理论研究
  • 应用研究
  • 资源收藏
  • 百家观点
  • 英文文献
  • 中国电化教育
  • 电化教育研究
  • 中国远程教育
  • 开放教育研究
  • 现代教育技术
  • 远程教育杂志
  • 现代远距离教育
  • 中国教育信息化
  • 中国信息技术教育
  • 中小学信息技术
  • Flash龙8国际平台入口
  • Photoshop龙8国际平台入口
  • 3DMAX龙8国际平台入口
  • AutoCAD龙8国际平台入口
  • CorelDRAW龙8国际平台入口
  • Matlab龙8国际平台入口
  • 其他龙8国际平台入口
  • .Net龙8国际平台入口
  • Asp龙8国际平台入口
  • Php龙8国际平台入口
  • Jsp龙8国际平台入口
  • Ajax龙8国际平台入口
  • Android教程
  • 其他龙8国际平台入口
  • Word教程
  • Excel教程
  • PowerPoint教程
  • Ubuntu教程
  • 其他教程
  • 课件下载
  • 软件下载
  • 视频教程下载
  • 其他下载
  • 教案大全
  • 试题大全
  • 课件大全
  • 其他大全
  • 人像摄影
  • 风光摄影