2012-01-18 18 views
1

我想在內存數據庫中使用查詢單元測試中的數據,我的項目是Ibatis(帶註釋),用於查詢我希望在HSQLDB幫助下模擬的實際數據庫。如何在Ibatis中使用HSQLdb

請幫助我如何使用HSQLDB配置iBatis。

還有什麼辦法可以更好地進行單元測試,這些代碼在功能上強烈依賴於數據庫。

回答

1

,您可根據iBatis的sqlMappings.xml配置文件是這樣的:

<sql-map-config> 

    <properties resource="configuration.properties" /> 

    <!--The datasource for you application is configured here: --> 
    <datasource name = "hsql" 
     factory-class="com.ibatis.db.sqlmap.datasource.SimpleDataSourceFactory" 
     default="true"> 
    <property name="JDBC.Driver" value=""/> 
    <property name="JDBC.ConnectionURL" value=""/> 
    <property name="JDBC.Username" value=""/> 
    <property name="JDBC.Password" value=""/> 
    </datasource> 

    <!--Declare the SQL Maps to be loaded for this application. 
     Be sure it's in your classpath. --> 
    <sql-map resource="maps/beanMappings.xml"/> 


</sql-map-config> 

加上congifuration.properties文件是這樣的:

JDBC.Driver=org.hsqldb.jdbcDriver 
JDBC.ConnectionURL=jdbc:hsqldb:hsql://localhost/myDb 
JDBC.Username=sa 
JDBC.Password= 

,然後用它是這樣的:

String resource = "maps/SqlMapConfig.xml"; 
Reader reader = Resources.getResourceAsReader(resource); 
SqlMap sqlMap = XmlSqlMapBuilder.buildSqlMap(reader); 
+0

我的項目沒有使用XML配置它使用了一個prop文件,我可以給dbname,user,pass n host – Ankur 2012-01-18 13:43:29

+1

我已經更新了我的答案以指定.properties配置文件。 – 2012-01-18 13:55:49