<dataset>
<user id="1" created_date='2017-01-01 00:00:00' email="" user_name="root"/>
</dataset>
上面的 xml 给了我错误。问题是我为用户保留了字。我该如何解决这个问题。任何链接?
更新
我正在使用 spring boot、spring data jpa、spring-test-dbunit、dbunit、postgresql
<dataset>
<user id="1" created_date='2017-01-01 00:00:00' email="" user_name="root"/>
</dataset>
上面的 xml 给了我错误。问题是我为用户保留了字。我该如何解决这个问题。任何链接?
更新
我正在使用 spring boot、spring data jpa、spring-test-dbunit、dbunit、postgresql
根据这个论坛https://sourceforge.net/p/dbunit/mailman/message/20643023/似乎 DBUnit 没有办法“引用”表名。但是您可以配置DatabaseDataSourceConnectionFactoryBean
是否由于某种原因不想重命名表或使用旧数据库
@Configuration
public class Custom.... {
@Autowired
private DataSource dataSource;
@Bean
public DatabaseConfigBean dbUnitDatabaseConfig() {
DatabaseConfigBean dbConfigBean = new DatabaseConfigBean();
// dbConfigBean.setDatatypeFactory(new PostgresqlDataTypeFactory());
dbConfigBean.setQualifiedTableNames(true);
return dbConfigBean;
}
@Bean
public DatabaseDataSourceConnectionFactoryBean dbUnitDatabaseConnection() {
DatabaseDataSourceConnectionFactoryBean databaseDataSourceConnectionFactoryBean = new DatabaseDataSourceConnectionFactoryBean(dataSource);
databaseDataSourceConnectionFactoryBean.setDatabaseConfig(dbUnitDatabaseConfig());
return databaseDataSourceConnectionFactoryBean;
}
}
将 true 设置为qualifiedTableNames 后,您应该在xml 中为您的表提供全名
<public.user id="1" created_date='2017-01-01 00:00:00' email="root@demo.io" password="your password" username="root"/>