深入浅出Hibernate中的第一个例子

学习紧张,老师又不给时间我们做项目,令这书买了几个月也没时间认真去看
晕,为了以后查看,先记录下...

首先不用多说先到 这里下载工具

工具有: (当前最新版本)
hibernate 2.1.8
hibernate-middlegen rel-5
hibernate-ext  2.1.3
IDE我是用 MyEclipse 6.0
数据库 SQL Server 2005 (下载相应的JDBC驱动)
---------------------------------------------------------------------------------
首先打开IDE,新建工程 (File -> New -> JavaProject)
然后把这些压缩包解压到项目的lib目录下
按 Alt + Enter 进入项目管理 选择 Java Build Path -> Libraries
把刚才解压了的工具加全部加进去,还有
JDBC驱动也加进去 ... OK
---------------------------------------------------------------------------------
现在正式开始 配置 Hibernate 启动的环境
先把JDBC驱动拷到 /lib/Middlegen-Hibernate-r5/lib 目录下
然后建个测试数据库,这里我就不做了.
---------------------------------------------------------------------------------
进入目录 /lib/Middlegen-Hibernate-r5/config/database
选择你相应数据库的xml文件 SQL Server 2005 当然是 mssql.xml 啦
配置如下
<!-- 数据库T-SQL文件,可以为空-->
<property name="database.script.file"            
                value
="${src.dir}/sql/@{name}-mssql.sql"/>
<!-- JDBC驱动-->
<property name="database.driver.file"           
                value
="${lib.dir}/mssql.jar"/>
<!-- 驱动-->
<property name="database.driver.classpath" 
                value
="${database.driver.file}"/>
<!-- 驱动类-->
<property name="database.driver"                 
                value
="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
<!-- 连接字符串-->
<property name="database.url"                      
                value
="jdbc:sqlserver://localhost:1433; DatabaseName=数据库"/>
<!-- 连接帐号-->
<property name="database.userid"
                value
="sa"/>
<!-- 连接密码-->
<property name="database.password"
                value
=""/>
<!-- 连接到的实例名称-->
<property name="database.schema"
                value
="dbo"/>
<!-- 连接到的数据库名称-->

<property name="database.catalog"
                value
="数据库"/>
<!-- 映射类型-->

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

之后就要改 /lib/Middlegen-Hibernate-r5/build.xml 文件了
打开文件,找查关键字 "!ENTITY",修改成 你的数据库类型XML文件
<!DOCTYPE project [
    <!ENTITY database SYSTEM "file:./config/database/mssql.xml"
>
]>

找查关键字 "airline"  修改成
<property name="name" value="你的项目名称" />
 
找查关键字 "name="build.gen-src.dir"" 修改成你想要输出的目录
<property name="build.gen-src.dir" value="../../src" />

找查关键字 "destination" 修改成
<hibernate
 destination
="${build.gen-src.dir}"  package="你的包名字"
 genXDocletTags
="true"  genIntergratedCompositeKeys="false"
 javaTypeMapper
="middlegen.plugins.hibernate.HibernateJavaTypeMapper" />

好了...要改的都改了现在是看看结果:
/lib/Middlegen-Hibernate-r5/build.xml 中按右键 选择 Run As -> Ant Build
假如你的包都加好,就可以看到
Middlegen界面了
-------------------------------------------------------------------------------
配置Hibernate动态生成JavaBean:
老样子打开
/lib/Middlegen-Hibernate-r5/build.xml 文件
查找关键字 "Run hbm2java    depends="middlegen"" 修改成
<!-- ========================================== -->
<!-- Run hbm2java   depends="middlegen"                         -->
<!-- ========================================== -->
<
target name="hbm2java" description="Generate .java from .hbm files.">
    <taskdef name="hbm2java"
                  classname
="net.sf.hibernate.tool.hbm2java.Hbm2JavaTask"
                  classpathref
="lib.class.path" />
    <hbm2java output="${build.gen-src.dir}" classpath="lib.class.path">
    
<fileset dir="${build.gen-src.dir}">
        
<include name="**/*.hbm.xml" />
    
</fileset>
</hbm2java>
</target>

修改后
Run As -> Ant Build 就可以看见你的输出目录
多了一个映射XML文件 和 一个动态生成的JavaBean
---------------------------------------------------------------------------------
用Hibernate插入填充好的JavaBean到数据库:
先在项目的src目录下创建一个 hibernate.cfg.xml 文件
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration
    PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
>
<hibernate-configuration>
   
<session-factory >       
        <
property name="hibernate.connection.url">
        jdbc:sqlserver://localhost:1433; DatabaseName=数据库
        </
property>       
        <
property name="hibernate.connection.driver_class">
        com.microsoft.sqlserver.jdbc.SQLServerDriver
        </
property>
       
<property name="hibernate.connection.username">
        sa
        </property>
       
<property name="hibernate.connection.password">
        连接密码
        </property>
       
<property name="dialect">
        net.sf.hibernate.dialect.SQLServerDialect
        </
property>
       
<property name="hibernate.show_sql">
        True
        </
property>
       
<property name="hibernate.use_outer_join">
        True

        </
property>            
        <
property name="hibernate.transaction.factory_class">
        net.sf.hibernate.transaction.JDBCTransactionFactory

        </
property>
       
<mapping resource="刚生成的映射文件hbm.xml"/>
   
</session-factory>
</hibernate-configuration>

都配置好了,现在终于可以测试了!!!!!!
测试代码如下:
Configuration config  =   new  Configuration().configure();
SessionFactory sFactory 
=  config.buildSessionFactory();
Session session 
=  sFactory.openSession();
Javabean bean
=   new  Javabean();
bean.setName(
" eason505 " );
session.save(bean);
session.flush();
Assert.assertEquals(bean.getId().intValue() 
>   0 true );
session.close();

运行了后你就可以看见数据库多了一条记录,就是你填充JavaBean的东西
------------------------------------------------------------------------------
唉,累死了,现在终于明白以前老师说的什么反射机制.....编程真的深不可测
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值