У меня есть простая среда spring-data-jpa, где я хочу подключиться к базе данных mysql. После кода с Entity:application.propreties проигнорирован весной
@Entity
public class DbRecord extends AbstractPersistable<Long> {
private String name;
public DbRecord(String name) {
this.name = name;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
}
класса Configuration (очень простой)
@Configuration
@EnableAutoConfiguration
public class DemiConfiguration {}
Repository
public interface DemiRepository extends CrudRepository<DbRecord, Long> {}
и, наконец, испытания
@RunWith(SpringJUnit4ClassRunner.class)
@Transactional
@ContextConfiguration(classes = DemiConfiguration.class)
public class SimpleTest {
@Autowired
DemiRepository repository;
@Test public void testInsert() {
DbRecord record = new DbRecord("test");
repository.save(record);
Iterable<DbRecord> records = repository.findAll();
}
}
До сих пор так хорошо. Тест работает на HSQLDB, но когда я пытаюсь написать к базе данных MySQL, и я создать application.properties Into SRC/основные/ресурсы/application.properites со следующими значениями:
spring.datasource.url=jdbc:mysql://localhost/demi
spring.datasource.username=demi
spring.datasource.password=demi123
spring.datasource.driverClassName=com.mysql.jdbc.Driver
тест игнорирует свойства и придерживается стандартной конфигурации с помощью hsqldb.
Я использую IntelliJ как IDE.
При тестировании приложений Spring Загрузочные вместо '@ ContextConfiguration' использовать' @ SpringApplicationConfiguration' зарегистрировать дополнительные слушателей. –