Java 结合SpringJPA和EmbeddedDatabaseBuilder。单元测试时,存储库返回空数据
我有以下的库存和Dao服务。出于测试目的,我使用EmbeddedDatabaseBuilder创建表并插入示例数据。 在这种情况下,正如您从RDBMSDaoImpl->test方法中看到的,当我试图通过SpringJPA访问属性表中的数据时,它返回空结果。 但是当我使用转换的wayjdbctemplate时,我得到的值是通过insert-data.sql插入的 使用Spring boot 1.3.3.1释放Java 结合SpringJPA和EmbeddedDatabaseBuilder。单元测试时,存储库返回空数据,java,spring,spring-boot,Java,Spring,Spring Boot,我有以下的库存和Dao服务。出于测试目的,我使用EmbeddedDatabaseBuilder创建表并插入示例数据。 在这种情况下,正如您从RDBMSDaoImpl->test方法中看到的,当我试图通过SpringJPA访问属性表中的数据时,它返回空结果。 但是当我使用转换的wayjdbctemplate时,我得到的值是通过insert-data.sql插入的 使用Spring boot 1.3.3.1释放 添加此处描述的缺少的bean 添加此处描述的缺少的bean 显示属性报告的插入插入插入T
添加此处描述的缺少的bean
添加此处描述的缺少的bean
显示属性报告的插入插入插入TIMS。属性值'asd','p;A“IMOS”;显示插入的属性报告插入到TIMS中。属性值'asd','P;A“IMOS”;
public interface OfPropertyRepository extends CrudRepository <OfProperty, String> {
OfProperty findByName(String name);
}
@Service
public class RDBMSDaoImpl implements RDBMSDao {
private static final String SQL = "SELECT VALUE FROM TIMS.PROPERTY WHERE ID=?";
@Autowired
OfPropertyRepository OfPropertyRepository;
@Override
public int test() {
**//Return a value**
String value = jdbcTemplate.queryForObject(SQL, String.class, "prop.key");
**// no value found**
OfPropertyRepository.findAll();
}
////
public class AppConfigTest {
@Bean(destroyMethod = "shutdown")
public DataSource getDataSource() throws Exception {
return new EmbeddedDatabaseBuilder()
.setType(EmbeddedDatabaseType.HSQL)
.setName("TIMS")
.addScript("classpath:/db/create-db.sql")
.addScript("classpath:/db/insert-data.sql")
.build();
}
}
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = {AppConfigTest.class})
@ActiveProfiles("Test")
public class BaseSendServMessageRequestTest implements ApplicationContextAware{}