gpt4 book ai didi

java - 如何使用 HSQL 设置数据源进行 junit 测试

转载 作者:太空宇宙 更新时间:2023-11-04 08:12:41 25 4
gpt4 key购买 nike

我编写了一个存储库类,它采用 javax.sql.DataSource作为构造函数参数,并对其进行一些基本的 CRUD 操作。我现在想为它编写junit测试。我想使用 HSQL 作为这些测试的数据库,但我不确定如何按照我想要的方式设置数据库。对于 Spring 应用程序,我在应用程序上下文中放置了类似的内容进行测试:

<jdbc:embedded-database id="dataSource">
<jdbc:script location="classpath:mySQLForDB.sql"/>
</jdbc:embedded-database>

但是,我想要测试的不是 Spring 应用程序。无论如何,代码中是否有用于设置数据源并从 sql 文件设置数据库的代码?基本上,它在功能上等同于 Spring 使用 <jdbc:embedded-database> 所做的事情。标签。

最佳答案

您会考虑尝试 h2 吗?

public static void main(String[] args) throws ClassNotFoundException,
SQLException {
Class.forName("org.h2.Driver");
Connection conn = DriverManager.getConnection("jdbc:h2:mem:mytestdb",
"sa", "");
Statement st = conn.createStatement();
st.execute("create table foo (id integer)");
st.execute("insert into foo (id) values (1)");
ResultSet rs = st.executeQuery("select * from foo");
while (rs.next()) {
int result = rs.getInt("id");
System.out.println(result);
}
conn.close();
}

HSQL也有同样的方法,但没试过。看this link

我希望这会有所帮助。

关于java - 如何使用 HSQL 设置数据源进行 junit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10916729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com