hibernate3和mysql5第一步

本文详细介绍如何使用 Hibernate 3.2.5 版本搭建环境,并通过具体示例展示如何配置数据库连接、创建实体映射文件及进行简单的 CRUD 操作。

 

网上下载hibernate3.2.5,打开一看,除了hibernate3.jar以外,还有好多jar.恐怖.

硬作头皮在win32平台上添加这么多包的环境变量:

%classpath%;d:/lib;d:/javaweb/tomcat/common/lib/servlet-api.jar;d:/javadev/jdk1.5.0_08/jre/lib;d:/lib/commons-logging-1.0.4.jar;d:/lib/dom4j-1.6.1.jar;d:/lib/hibernate3.jar;d:/lib/cglib-2.1.3.jar;d:/lib/commons-collections-2.1.1.jar;d:/lib/log4j-1.2.11.jar;d:/lib/ehcache-1.2.3.jar;d:/lib/asm.jar;d:/lib/jta.jar;d:/lib/ant-antlr-1.6.5.jar;d:/lib/mysql-connector-java-5.0.7-bin.jar;

因为是测试,全部文件都放到d:/lib目录

1.包括N多个hibernate相关的包.

2.一个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">

<hibernate-configuration>

    <session-factory>
        <!-- properties -->
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.url">jdbc:mysql://localhost/tc</property>
        <property name="dialect">org.hibernate.dialect.MySQLDialect</property>

        <property name="connection.password">63303205</property>
 <property name="connection.username">root</property>


        <!-- mapping files -->
        <mapping resource="user.hbm.xml"/>

    </session-factory>

</hibernate-configuration>

--------------------------------------------------------------------------------

3. user.java和编译好的user.class

------------------------------------------------------------------

public class user
{
    private int user_id;
    private String user_name;
    private String user_pass;
   
    public int getUser_id()
    {
        return user_id;
    }
    public String getUser_name()
    {
        return user_name;
    }
    public String getUser_pass()
    {
        return user_pass;
    }


    public void setUser_id(int id)
    {
        this.user_id = id;
    }
    public void setUser_name(String name)
    {
        this.user_name = name;
    }
    public void setUser_pass(String pass)
    {
        this.user_pass = pass;
    }

}
-----------------------------------------------------------------------

4.一个user.hbm.xml

----------------------------------------------------------------------------------------------------

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping
     PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
     "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>    
    <class name="user" table="user">        

        <id name="user_id" column="id" type="java.lang.Integer">            
            <generator class="increment"/>        
        </id>        

        <property name="user_name" column="name" type="java.lang.String"/>
        <property name="user_pass" column="pass" type="java.lang.String"/>
    </class>
</hibernate-mapping>

------------------------------------------------------------------------

5.一个最后测试的运行程序

------------------------------------------------------------------------


import org.hibernate.*;
import org.hibernate.cfg.*;

public class Test
{
    public static void main(String[] args)
    {
        try
        {
            //通过Configuration获得一个SessionFactory对象
   SessionFactory sf = new Configuration().configure().buildSessionFactory();
            //打开一个Session
            Session session = sf.openSession();
            //开始一个事务
            Transaction tx = session.beginTransaction();
            //创建一个User对象
            user stu = new user();
            //通过User的setter方法改变它的属性
            //注意student_id不用我们设置
            stu.setUser_name("zhangsan");
            stu.setUser_pass("6330");
            //通过session的save()方法将User对象保存到数据库中
            session.save(stu);
            //提交事务
            tx.commit();
            //关闭会话
            session.close();
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }   
}

----------------

6.最后有一个tc数据库,其中有一个user表,有id,name和pass字段.

 

 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘欣的博客

你将成为第一个打赏博主的人!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值