Как использовать HSQLdb с Ibatis - PullRequest
1 голос
/ 18 января 2012

Я хочу использовать в базе данных памяти для запроса данных в моем модульном тестировании, мой проект Ibatis (с аннотацией) для запроса фактической базы данных, которую я хочу имитировать с помощью HSQLDB.мне, как настроить iBatis с HSQLDB.

Также есть ли способ лучше для модульного тестирования с кодом, который сильно зависит от базы данных в его функциях.

1 Ответ

1 голос
/ 18 января 2012

Вы можете сделать конфигурационный файл 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);
...