Hibernate 配置

来源:互联网 发布:卡佩拉体测弹跳数据 编辑:程序博客网 时间:2024/05/17 01:55
1.首先准备环境,以下Hibernate及其插件的下载地址http://prdownloads.sourceforge.net/hibernate/?sort_by=date&sort=desc

Hibernate
MiddleGen-Hibernate
Hibernate-Extentions
Ant http://ant.apache.org
JDBC For Sqlserver2000

2.Hibernate基础代码包括

POJO
POJO在Hibernate里应该理解成数据库表所对应的Domain Object.POJO就是“Plain Ordinary Java Object“ 无格式的普通Java对象.可以理解为不包含逻辑代码的值对象(Value Object)

public class TUser implements Serializable
{
private String name;
public User(String name)
{
this.name = name;
}

/** default constructor */
public User()
{
}

public String getName()
{
return this.name;
}

public void setName(String name)
{
this.name = name;
}
}



Hibernate映射文件
Hibernate 从本质上来讲是一种“对象-关系型数据映射”(Object Relational
Mapping 简称ORM)。前面的POJO在这里体现的就是ORM中Object层的语义,
而映射(Mapping)文件则是将对象(Object)与关系型数据(Relational)相关联的纽带,在Hibernate中,映射文件通常以“.hbm.xml”作为后缀。

3.由数据库来产生基础代码
Hibernate官方提供的MiddleGen for Hibernate 和Hibernate_Extension工具包,我
以很方便的根据现有数据库,导出数据库表结构,生成ORM和POJO。下面就来做个示例.

4.接压缩MiddleGen-Hibernate到 C:/work/MiddleGen.

5.接压缩Hibernate 到 C:/work/Hibernate.

6.接压缩Extentions到 c:/work/Extentions

7.进入MiddleGen目录的/config/database子目录.我们这里用的是Sqlserver2000,所以选择mssql.xml

打开 mssql.xml

<property name="database.script.file" value=""/>
<property name="database.driver.file" value="${lib.dir}/Sprinta2000.jar"/>
<property name="database.driver" value="com.inet.tds.TdsDriver"/>
<property name="database.url" value="jdbc:inetdae7:localhost?database=airline"/>
<property name="database.userid" value="sa"/>
<property name="database.password" value="sa"/>
<property name="database.schema" value=""/>
<property name="database.catalog" value=""/>

<property name="jboss.datasource.mapping" value="MS SQLSERVER"/>

这里修改一下

我们把下载好的jdbc for sqlserver2000安装了后,把安装目录的/lib目录下面的3个jar文件放到Middlegen的lib目录里面.

<property name="database.driver.file" value="${lib.dir}/mssqlserver.jar"/> //驱动jar文件
<property name="database.driver" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>//用winrar打开上面的jar文件就可以看到SQLServerDriver.class在jar文件中的路径了
<property name="database.url" value="jdbc:microsoft:sqlserver://localhost:1433;database=Northwind"/>//数据库的路径.前面的“jdbc.microsoft.sqlserver“
<property name="database.userid" value="sa"/>//用户名
<property name="database.password" value=""/>//密码
<property name="database.schema" value="dbo"/>//一定要写,很重要
<property name="database.catalog" value="Northwind"/>//一定要写很重要

8.配置build.xml文件(下面只是个人做一些测试,可以根据自己的需要来进行修改)

查找关键字 ”!ENTITY”,得到:
<!DOCTYPE project [
<!ENTITY database SYSTEM "file:./config/database/hsqldb.xml">
]>
因为默认MiddleGen是采用hsql.xml,所以修改成我们的mssql.xml

<!DOCTYPE project [
<!ENTITY database SYSTEM "file:./config/database/hsqldb.xml">
]>

修改程序的name
<property name="name" value="airline"/>

修改成

<property name="name" value="sample"/>

修改输出目录
查找“name="build.gen-src.dir"“
<property name="build.gen-src.dir" value="${build.dir}/gen-src"/>
修改成
<property name="build.gen-src.dir" value="c:/sample"/>

修改Package 名称

查找“<hibernate“
<hibernate
destination="${build.gen-src.dir}"
package="${name}.hibernate"
genXDocletTags="false"
genIntergratedCompositeKeys="false"
javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
/>

把pachage属性修改为

<hibernate
destination="${build.gen-src.dir}"
package="org.hibernate.sample"
genXDocletTags="true"
genIntergratedCompositeKeys="false"
javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
/>

这里的genXDocletTags是设置在生成代码的时候是否生成XDoclettags,这个很重要,我们设置成true.


9.配置ant的路径,解压缩下载的ant后,比如c:/ant

我们右击我的电脑->熟悉->高级->编辑path的熟悉

在后面加入c:/ant/bin

10.点击开始-->运行-->cmd

cd到我们的MiddleGen目录 ,运行ant

如果提示连接数据库失败的话那就是mssql.xml没有配置好

如果显示连接数据库成功,没有找到table的话就是schemas和catalogs没有配置对了.

11.如果没有出错的话会启动一个界面,然后点击最上面的generae就可以生成POJO文件了