01 Hibernate测试

创建数据库

  1. 创建名为powersystem的数据库,使用utf-8编码
  2. 创建名为elec_text的表,字段如下
//测试表
CREATE TABLE Elec_Text(
    textID VARCHAR(50) NOT NULL PRIMARY KEY,
    textName VARCHAR(50),
    textDate DATETIME,
    textRemark VARCHAR(500)
)

添加lib

  1. hibernate3.jar
  2. dom4j-1.6.1.jar —dom4j读取xml文件包
  3. mysql-connector-java-3.1.13-bin.jar
  4. log4j-1.2.11.jar
  5. commons-logging-1.0.4.jar
  6. commons-collections-2.1.1jar
  7. cglib-2.1.3.jar
  8. asm.jar — cglib需要依赖的jar,ASM字节码库

编辑配置文件

  1. 创建名为Electric的Web项目
  2. 拷入所需jar包
  3. 创建ElecTest类
  4. 创建同名xml文件(ElecTest.hbm.xml)
  5. 在src目录下创建hibernate.cfg.xml文件并编辑
public class ElecTest implements Serializable {
    private static final long serialVersionUID = 1L;
    private String textID;
    private String textName;
    private Date textDate;
    private String textRemark;
    public String getTextID() {
        return textID;
    }
    public void setTextID(String textID) {
        this.textID = textID;
    }
    public String getTextName() {
        return textName;
    }
    public void setTextName(String textName) {
        this.textName = textName;
    }
    public Date getTextDate() {
        return textDate;
    }
    public void setTextDate(Date textDate) {
        this.textDate = textDate;
    }
    public String getTextRemark() {
        return textRemark;
    }
    public void setTextRemark(String textRemark) {
        this.textRemark = textRemark;
    }
}
<!--ElecTest.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="com.test.elec.domain.ElecTest" table="Elec_Text">
        <id name="textID" type="string" column="textID">
            <generator class="uuid"></generator>
        </id>
        <property name="textName" type="string" column="textName"></property>
        <property name="textDate" type="date" column="textDate"></property>
        <property name="textRemark" type="string" column="textRemark"></property>
    </class>
</hibernate-mapping>
<!--hiberbate.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>
        <!-- 连接数据库的信息 -->
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/powersystem?useUnicode=true&amp;characterEncoding=utf8</property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.connection.password">adfds</property>
        <!-- 设置事务自动提交 
        <property name="hibernate.connection.autocommit">true</property>-->
        <!-- 其他配置 -->
        <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
        <property name="hibernate.hbm2ddl.auto">update</property>
        <property name="hibernate.show_sql">true</property>
        <!-- 添加映射 -->
        <mapping resource="com/test/elec/domain/ElecText.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

测试

创建TestHibernate类,使用junit进行测试

@Test
public void save(){
    Configuration configuration=new Configuration();
    configuration.configure();
    SessionFactory sessionFactory=configuration.buildSessionFactory();
    Session s=sessionFactory.openSession();
    Transaction tr=s.beginTransaction();
    ElecTest elecTest=new ElecTest();
    elecTest.setTextName("测试hibernate名称");
    elecTest.setTextDate(new Date());
    elecTest.setTextRemark("测试hibernate备注");
    s.save(elecTest);
    tr.commit();
    s.close();
}

运行结果

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值