亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 >
Hibernate配置文件在單元測試中的靈活運用
作者:網絡轉載 發布時間:[ 2012/11/29 13:35:31 ] 推薦標簽:

Hibernate 是一個流行的開源對象關系映射工具,單元測試和持續集成的重要性也得到了廣泛的推廣和認同,在采用了Hibernate的項目中如何保證測試的自動化和持續性呢?本文討論了Hibernate加載其配置文件hibernate.properties和hibernate.cfg.xml的過程,以及怎么樣將hibernate提供的配置文件的訪問方法靈活運用到單元測試中。

1 介紹
Hibernate 是一個流行的開源對象關系映射工具,單元測試和持續集成的重要性也得到了廣泛的推廣和認同,在采用了Hibernate的項目中如何保證測試的自動化和持續性呢?本文討論了Hibernate加載其配置文件hibernate.properties和hibernate.cfg.xml的過程,以及怎么樣將hibernate提供的配置文件的訪問方法靈活運用到單元測試中。注意:本文以hibernate2.1作為討論的基礎,不保證本文的觀點適合于其他版本。

2 讀者
Java開發人員,要求熟悉JUnit和掌握Hibernate的基礎知識

3 內容

3.1.準備
對于hibernate的初學者來說,第一次使用hibernate的經驗通常是:

1, 安裝配置好Hibernate,我們后面將%HIBERNATE_HOME%作為對Hibernate安裝目錄的引用,

2, 開始創建好自己的第一個例子,例如hibernate手冊里面的類Cat,

3, 配置好hbm映射文件(例如Cat.hbm.xml,本文不討論這個文件內配置項的含義)和數據庫(如hsqldb),

4, 在項目的classpath路徑下添加一個hibernate.cfg.xml文件,如下(第一次使用hibernate常見的配置內容):

 

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

<hibernate-configuration>
<session-factory>

<property name="connection.url">jdbc:hsqldb:hsql://localhost</property>
<property name="connection.driver_class">org.hsqldb.jdbcDriver</property>
<property name="connection.username">sa</property>
<property name="connection.password"></property>
<property name="dialect">net.sf.hibernate.dialect.HSQLDialect</property>

<property name="hibernate.show_sql">false</property>

<mapping resource="Cat.hbm.xml"/>

</session-factory>
</hibernate-configuration>

5, 然后還需要提供一個類來測試一下創建,更新,刪除和查詢Cat,對于熟悉JUnit的開發人員,可以創建一個單元測試類來進行測試,如下:

 

import junit.framework.TestCase;
import net.sf.hibernate.HibernateException;
import net.sf.hibernate.Session;
import net.sf.hibernate.Transaction;
import net.sf.hibernate.cfg.Configuration;

public class CatTest extends TestCase {

private Session session;
private Transaction tx;

protected void setUp() throws Exception {
Configuration cfg = new Configuration().configure();////注意這一行,這是本文重點討論研究的地方。
session = cfg.buildSessionFactory().openSession();
tx = session.beginTransaction();
}

protected void tearDown() throws Exception {
tx.commit();
session.close();
}

public void testCreate() {
//請在此方法內添加相關的代碼,本文不討論怎么樣使用Hibernate API。
}
public void testUpdate() {
//請在此方法內添加相關的代碼,本文不討論怎么樣使用Hibernate API。
}
public void testDelete() {
//請在此方法內添加相關的代碼,本文不討論怎么樣使用Hibernate API。
}
public void testQuery() {
//請在此方法內添加相關的代碼,本文不討論怎么樣使用Hibernate API。
}

}

3.2 new Configuration()都做了什么?
對于第一次使用hibernate的新手來說,下面的這段代碼可以說是常見的使用Configuration方式。

 

Configuration cfg = new Configuration().configure();

Configuration是hibernate的入口,在新建一個Configuration的實例的時候,hibernate會在classpath里面查找hibernate.properties文件,如果該文件存在,則將該文件的內容加載到一個Properties的實例GLOBAL_PROPERTIES里面,如果不存在,將打印信息

 

hibernate.properties not found

然后是將所有系統環境變量(System.getProperties())也添加到GLOBAL_PROPERTIES里面(注1)。如果hibernate.properties文件存在,系統還會驗證一下這個文件配置的有效性,對于一些已經不支持的配置參數,系統將打印警告信息。

上一頁123下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 亚洲一区中文字幕在线观看 | 亚洲一区中文字幕 | 在线中文字幕视频 | 国产裸舞在线一区二区 | 亚洲视频观看 | 五月月色开心婷婷久久合 | 一级a毛片免费观看久久精品 | 日韩在线视频不卡一区二区三区 | 国产在播放一区 | 亚洲精品 国产 日韩 | 午夜精品久久久久久久第一页 | 丁香婷婷激情网 | 亚洲国产精品日韩高清秒播 | 成人黄色片视频 | 美女被啪全免视频软件 | 岛国aⅴ| 亚洲制服丝袜第一页 | 亚洲视频2| 成人亚洲网站 | 日本一区二区不卡在线 | 最近的中文字幕大全免费8 最近的中文字幕2019更新 | 色偷偷亚洲第一成人综合网址 | 中国女人一级毛片 | 天天看黄 | 国内精品视频一区二区三区 | 麻豆一区二区 | 黄色片中文字幕 | 欧美大片国产在线永久播放 | 精品视频一区二区三区在线播放 | 欧美成人免费网在线观看 | 高清波多野结衣一区二区三区 | 亚洲欧美小视频 | 国产特黄特色一级特色大片 | 国产精品手机视频一区二区 | 一级级黄| 毛片福利 | 成人中文字幕在线观看 | 欧美日韩一区二区三区韩大 | 亚洲欧美日韩国产专区一区 | 日本夜夜| 成人午夜性a一级毛片美女 成人午夜小视频 |