java – 运行脚本以使用HSQLDB创建表
发布时间:2020-12-15 00:55:16 所属栏目:Java 来源:网络整理
导读:我使用hsqldb来运行需要数据库访问的单元测试. 目前,当我想为特定测试创建表时,我有以下代码: private void createTable() { PreparedStatement ps; try { ps = getConnection().prepareStatement("CREATE TABLE T_DATE (ID NUMERIC PRIMARY KEY,DATEID TIM
我使用hsqldb来运行需要数据库访问的单元测试.
目前,当我想为特定测试创建表时,我有以下代码: private void createTable() { PreparedStatement ps; try { ps = getConnection().prepareStatement("CREATE TABLE T_DATE (ID NUMERIC PRIMARY KEY,DATEID TIMESTAMP)"); ps.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } } getConnection()方法检索Spring上下文中定义的DataSource: <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="org.hsqldb.jdbcDriver"/> <property name="url" value="jdbc:hsqldb:mem:memoryDB"/> <property name="username" value="SA"/> <property name="password" value=""/> </bean> 现在,我想从SQL脚本创建我的表(当然,这个脚本将包含多个表创建): CREATE TABLE T_DATE_FOO (ID NUMERIC PRIMARY KEY,DATEID TIMESTAMP); CREATE TABLE T_DATE_BAR (ID NUMERIC PRIMARY KEY,DATEID TIMESTAMP); ... 我在HSQLDB文档中看到我可以问他run a script at the startup.但是,它不符合我的要求,因为我想在运行时运行脚本. 当然,我可以自己读取文件,对于每个SQL语句,我都运行一个ps.executeUpdate()命令,但我不想使用这种解决方案(除非没有其他解决方案). 任何的想法? 解决方法
因为您已经在使用spring,所以您可能希望使用执行SQL脚本的
SimpleJdbcUtils.executeSQLScript方法,其中语句以分号分隔. 这个类是在spring-test模块(JAR)中.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Eclipse中使用Maven创建Java Web工程的实现方式
- 教学环境介绍day6 (20191009)
- java – 某些操作系统版本上的NoSuchMethodError
- Java中增强for循环在一维数组和二维数组中的使用方法
- 链家广州二手房的数据与分析——数据分析2
- JSP Response.addCookie()方法:添加cookie对象
- java – 了解Goetz关于HttpSession线程安全性的文章
- java – 如何检测新窗口何时打开和/或获取打开的窗口列表?
- java-ee – 与Java EE HttpSession相比,Play 2.0中的cookie
- java – 用于保存已解析CSV文件内容的数据结构