`

通过Hibernate的hbm.xml文件生成数据库表(转)

 
阅读更多

首先,在src目录下,有一个文件,hibernate.cfg.xml,该文件的内容如下:

?

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration>

<session-factory>
<property name="connection.username">root</property>
<property name="connection.url">
jdbc:mysql://localhost:3306/hxview?useUnicode=true&amp;characterEncoding=gbk
</property>
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<property name="myeclipse.connection.profile">mysql</property>
<property name="connection.password">download</property>
<property name="connection.driver_class">
org.gjt.mm.mysql.Driver
</property>
<property name="show_sql">true</property>
<mapping resource="org/hx/model/projectList/ProjectList.hbm.xml" />
<mapping resource="org/hx/model/about/About.hbm.xml" />
<mapping resource="org/hx/model/gongshi/Gongshi.hbm.xml" />
<mapping resource="org/hx/model/projectinfo/ProjectInfo.hbm.xml" />
<mapping resource="org/hx/model/message/Message.hbm.xml" />
<mapping resource="org/hx/model/newsList/Newslist.hbm.xml" />
<mapping resource="org/hx/model/userList/Userlist.hbm.xml" />

</session-factory>
</hibernate-configuration>

?

其中,数据库名为:hxview ,org/hx/model/projectList/ProjectList.hbm.xml为包路径下的实体配置文件。

接下来,就是编写生成表的代码了,很简单,代码如下:

package utils;

import java.io.File;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;

public class HibernateSchemaExport {
static Session session;

?static Configuration config = null;
static Transaction tx = null;

?public static void main(String[] args) {

try {
config = new Configuration().configure(new File(
"src/hibernate.cfg.xml"));

System.out.println("Creating tables...");

SessionFactory sessionFactory = config.buildSessionFactory();
session = sessionFactory.openSession();
tx = session.beginTransaction();

SchemaExport schemaExport = new SchemaExport(config);
schemaExport.create(true, true);

System.out.println("Table created.");

tx.commit();

} catch (HibernateException e) {
e.printStackTrace();
try {
tx.rollback();
} catch (HibernateException e1) {
e1.printStackTrace();
}
} finally {

}
}

}
在运行前,请先确定数据库服务已经开启,并且数据库中存在名称为hxview的库,运行后,会将库里面的表删除,然后重新建表,所以,必须注意重要的数据是否已经保存!

运行结果如下:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
log4j:WARN Please initialize the log4j system properly.
Creating tables...
drop table if exists Message
drop table if exists ProjectInfo
drop table if exists about
drop table if exists gongshi
drop table if exists newslist
drop table if exists projectList
drop table if exists userlist
create table Message (id varchar(50) not null, msg text, adddate varchar(45) not null, ip varchar(45) not null, isflog varchar(2) not null, primary key (id))
create table ProjectInfo (id varchar(50) not null, names varchar(100) not null, info text not null, img text not null, primary key (id))
create table about (id varchar(50) not null, names varchar(45), tel varchar(45) not null, telcz varchar(45) not null, email varchar(100) not null, url varchar(200) not null, address text, primary key (id))
create table gongshi (id varchar(10) not null, info text not null, info2 text not null, primary key (id))
create table newslist (id varchar(50) not null, title varchar(100) not null, txt text not null, img text not null, adddate varchar(45) not null, downcount varchar(45) not null, ly varchar(45) not null, isflog varchar(45) not null, primary key (id))
create table projectList (id varchar(50) not null, img text not null, adddate varchar(45) not null, primary key (id))
create table userlist (id varchar(50) not null, names varchar(45) not null, pwd varchar(100) not null, regdate varchar(45) not null, flog varchar(2) not null, primary key (id))
Table created.

这样子,就完成了数据表的创建。

 

连接地址:http://blog.knowsky.com/254083.htm

分享到:
评论

相关推荐

    在myeclipse中根据表结构生成实体和hbm.xml文件

    在 MyEclipse 中,我们可以使用 Hibernate 根据现有的数据库表结构生成实体和 hbm.xml 配置文件,这样可以避免手动编写 JPA 或 Hibernate 实体类。下面是生成实体和 hbm.xml 文件的步骤: 首先,需要创建一个 JPA ...

    利用hibernate自动生成hbm.xml文件和entity类.doc

    Hibernate 反向工程是指使用 Hibernate 工具将数据库表结构反向生成对应的 Entity 类和 hbm.xml 文件的过程。这种方法可以大大简化开发过程,提高开发效率。 二、 Hibernate 反向工程的步骤 1. 切换到 MyEclipse ...

    自动生成Hibernate类文件和hbm.xml文件

    通过myeclipse自动生成Hibernate类文件和hbm.xml文件,链接数据库库自动生成

    hibernate.hbm.xml详解

    总之,`hibernate.hbm.xml`文件是Hibernate的核心配置文件,它清晰地定义了Java对象和数据库表之间的映射关系,以及主键生成策略。熟练掌握其结构和用法,能有效提高Hibernate应用的开发效率和数据管理的准确性。

    从hbm的xml文件 自动生成数据库表

    标题中的“从hbm的xml文件自动生成数据库表”指的是在Java编程中,使用Hibernate框架的一个功能,通过Hibernate Mapping(hbm.xml)文件来自动创建对应的数据库表结构。Hibernate是流行的Java ORM(对象关系映射)...

    Hibernate-tools解决hbm.xml中文注释乱码和生成实体类注释

    `Hibernate-tools`是Hibernate项目提供的一组实用工具,它包括了代码生成、反编译数据库模式到`hbm.xml`文件、JPA实体类生成等功能。在5.2.1版本中,这个工具集已经相当成熟,可以很好地支持各种定制需求。 1. **...

    MyEclipse生成hbm.xml文件(全图解)

    总结来说,MyEclipse生成hbm.xml文件的过程主要包括配置数据库连接,选择需要映射的表,通过逆向工程生成实体类和映射文件,以及处理可能的配置问题。这个过程极大地提高了开发效率,避免了手动编写大量的重复代码,...

    Hibernate逆向生成entity和hbm.xml文件

    这个"hibernate逆向生成.exe"文件可能是一个基于Windows平台的Hibernate反向工程工具,用户只需按照一定的步骤配置数据库连接信息,选择需要逆向生成的表,工具就会自动生成对应的Entity类和hbm.xml文件。...

    Oracle自动生成hibernate实体(.java 和.hbm.xml文件)存储过程

    关于`.hbm.xml`文件,它是Hibernate的XML映射文件,用于描述Java对象(实体类)与数据库表之间的关系。每个实体类对应一个`.hbm.xml`文件,其中包含了类名、属性名、字段类型、主键信息以及关联关系等配置。这些信息...

    Hibernate的........htm.xml和hibernatecfg.xml配置

    `.hbm.xml`文件用于映射数据库表和Java类之间的关系,而`hibernate.cfg.xml`则是Hibernate的整体配置文件,包含了数据库连接、事务管理等核心设置。 ** Hibernate基础知识 ** Hibernate是一款流行的Java持久化框架...

    使用MyEclipse工具生成POJO类和映射文件.hbm.xml

    生成的 POJO 类将存放在我们指定的存放位置,并且映射文件 .hbm.xml 将被添加到 hibernate.cfg.xml 文件中。 使用 MyEclipse 工具生成 POJO 类和映射文件 .hbm.xml 非常简单。MyEclipse 提供了许多实用的功能来帮助...

    利用Middlegen Hibernate3生成hbm.xml配置和java类

    标题中的“利用Middlegen Hibernate3生成hbm.xml配置和java类”指的是使用Middlegen工具来自动化创建Hibernate3框架所需的映射文件(hbm.xml)和对应的Java实体类。这个过程是数据库对象到Java对象(O/R Mapping)的...

    hibernate。hbm.xml配置详解

    在 Hibernate 中,`hbm.xml` 文件是用于定义对象与数据库表之间映射的元数据文件。这篇文档将深入解析 `hbm.xml` 配置的各个方面。 ### 1. `hbm.xml` 文件结构 `hbm.xml` 文件的开头通常包含 XML 声明和 DTD 引用...

    myeclipse中自动生成hibernate的POJO、DAO和hbm.xml文件

    为了使用MyEclipse生成Hibernate的POJO、DAO和hbm.xml文件,首先需要配置数据库连接。在MyEclipse中,可以通过Database Explorer窗口来配置数据库连接。具体步骤如下: 1. 打开Database Explorer窗口:window-&gt;open...

    使用Hibernate逆向生成实体类的方法(注解和hbm.xml映射文件)

    - 对于通过hbm.xml生成的实体类,需要在hibernate.cfg.xml中添加相应的映射文件路径。 3. **测试连接**: - 运行测试程序,验证Hibernate是否能够正确读取映射信息并与数据库交互。 通过以上步骤,我们不仅能够...

    hibernate.cfg.xml文件

    而`hibernate.cfg.xml`是Hibernate的核心配置文件,它定义了数据库连接、实体类映射以及其它关键设置,是理解和使用Hibernate的基础。 一、文件结构 `hibernate.cfg.xml`文件主要由以下几个部分组成: 1. **XML...

    hbm xml配置详解 ssh框架

    `.hbm.xml`文件是Hibernate的实体映射文件,它定义了Java对象(实体类)与数据库表之间的映射关系。通过这种方式,开发者可以避免直接编写SQL语句,提高开发效率,同时使代码更加面向对象。每个`.hbm.xml`文件通常...

    xdoclet 用于生成*.hbm.xml

    .hbm.xml文件是Hibernate中用来定义Java类与数据库表之间的映射关系的XML文件。这些文件包含了关于字段映射、关联关系、查询定义等各种元数据信息。 使用xdoclet,开发者只需在Java类中添加特定的注解,如@Entity、...

    CodeSmith对应的NHibernate的.hbm.xml映射文件的生成模板

    使用这些模板时,开发者可以输入数据库连接信息,选择要生成映射文件的表或整个数据库,CodeSmith将自动解析数据库模式并生成相应的C#类和.hbm.xml文件。这样,开发者可以快速建立起对象模型与数据库之间的桥梁,...

    Hibernate关联关系hbm.xml中的相关属性

    在Hibernate中,关联关系是对象关系映射(ORM)的核心组成部分,它允许我们将数据库的表结构映射到Java对象,并管理这些...在hbm.xml文件中正确地配置这些标签和属性,可以使Hibernate更高效、更灵活地管理对象关系。

Global site tag (gtag.js) - Google Analytics