最近看了一本关于Hibernate开发的书.自己尝试了一下. 
1.首先准备环境,以下Hibernate及其插件的下载地址http://prdownloads.sourceforge.net/hibernate/?sort_by=date&sort=desc 
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">                   ]> 
              <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文件了.  
 
  |