将MySQL转换为H2

时间:2014-09-07 06:14:05

标签: mysql spring hibernate h2

我正在按照以下代码开展项目: 链接下载代码:https://bitbucket.org/vrto/spring-tutorial/get/a66534cc7033.zip

现在我真正想要的是拥有一个运行HSQL或H2的嵌入式数据库,而不是MySQL。所以我正在尝试实现这样一个系统。

在教程代码中,他创建了一个数据库。然后h2 + hibernates为他创建了未来的表 - 所以如果我可以创建它而不必拥有sql架构或任何东西来设置它。  所以我已经摆脱了mySql maven依赖,正在努力替换persistence-beans.xml 现在我必须用相关的h2或hsql版本替换我的dataSource。 所以这就是我得到的。

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
    destroy-method="close">
    <property name ="driverClassName" value = "org.h2.driver"/>
    <property name = "url" value ="jdbc:h2:mem:test;DB_CLOSE_DELAY=-1" />
    <property name = "username" value = "sa" />
    <property name = "password" value = "" /> 
</bean>

// I also tried this (but again, having a schema with his code is tricky I’ve found

<jdbc:embedded-database id="dataSource" type="H2">
    <jdbc:script location="classpath:schema.sql"/>
    <jdbc:script location="classpath:test-data.sql"/>
</jdbc:embedded-database>

但它在运行HibernateConfigurationTest.Java(并在扩展中 - 所有其他)时失败 任何帮助将不胜感激。

我已经设法使用我的架构进行此测试

@ContextConfiguration(locations = "/persistence-beans.xml")
public class HibernateConfigurationTest extends AbstractJUnit4SpringContextTests {

    @Autowired
    private SessionFactory sessionFactory;

    @Test
    public void testHibernateConfiguration() {
        // Spring IOC container instantiated and prepared sessionFactory
        assertNotNull (sessionFactory); 
    }

}

其余测试在此链接中:http://vrtoonjava.wordpress.com/2012/06/17/part-3-dao-and-service-layer/

0 个答案:

没有答案