Có vẻ như (có thể không), SpringBoot không thể tải tệp application.properties nằm trên src/main/resources. Tôi cần thêm cấu hình gì để khởi động ứng dụng của mình?Khởi động mùa xuân: Không thể định cấu hình
Lỗi Trace:
Nguyên nhân:
org.springframework.boot.autoconfigure.jdbc.DataSourceProperties $ DataSourceBeanCreationException: Không thể xác định nhúng lớp lái xe cơ sở dữ liệu cho loại hình cơ sở dữ liệu NONE. Nếu bạn muốn có cơ sở dữ liệu nhúng, hãy đặt một lớp được hỗ trợ trên đường dẫn lớp. Nếu bạn có cài đặt cơ sở dữ liệu được tải từ một cấu hình cụ thể , bạn có thể cần phải kích hoạt nó (không có tiểu sử nào là hiện đang hoạt động).
MembersApplication.java
@SpringBootApplication
public class MembersApplication {
public static void main(String[] args)
{
SpringApplication.run(MembersApplication.class, args);
}
}
DatabaseConfig.java
@Configuration
@EnableTransactionManagement
public class DatabaseConfig {
@Value("${db.driver}")
private String DB_DRIVER;
@Value("${db.password}")
private String DB_PASSWORD;
@Value("${db.url}")
private String DB_URL;
@Value("${db.username}")
private String DB_USERNAME;
@Value("${hibernate.dialect}")
private String HIBERNATE_DIALECT;
@Value("${hibernate.show_sql}")
private String HIBERNATE_SHOW_SQL;
@Value("${hibernate.hbm2ddl.auto}")
private String HIBERNATE_HBM2DDL_AUTO;
@Value("${entitymanager.packagesToScan}")
private String ENTITYMANAGER_PACKAGES_TO_SCAN;
@Bean
public DataSource dataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName(DB_DRIVER);
dataSource.setUrl(DB_URL);
dataSource.setUsername(DB_USERNAME);
dataSource.setPassword(DB_PASSWORD);
return dataSource;
}
@Bean
public LocalSessionFactoryBean sessionFactory() {
LocalSessionFactoryBean sessionFactoryBean = new LocalSessionFactoryBean();
sessionFactoryBean.setDataSource(dataSource());
sessionFactoryBean.setPackagesToScan(ENTITYMANAGER_PACKAGES_TO_SCAN);
Properties hibernateProperties = new Properties();
hibernateProperties.put("hibernate.dialect", HIBERNATE_DIALECT);
hibernateProperties.put("hibernate.show_sql", HIBERNATE_SHOW_SQL);
hibernateProperties.put("hibernate.hbm2ddl.auto", HIBERNATE_HBM2DDL_AUTO);
sessionFactoryBean.setHibernateProperties(hibernateProperties);
return sessionFactoryBean;
}
@Bean
public HibernateTransactionManager transactionManager() {
HibernateTransactionManager transactionManager =
new HibernateTransactionManager();
transactionManager.setSessionFactory(sessionFactory().getObject());
return transactionManager;
}
khi tôi cố gắng thêm http://mvnrepository.com/artifact/mysql/mysql-connector-java/5.1.37, maven cảnh báo "Sao chép phiên bản được quản lý". Tôi đoán khởi động mùa xuân đã thêm phụ thuộc cho tôi? – Forkmohit
Chỉ cần xóa phiên bản khỏi phụ thuộc của maven. Đây là tính năng của Spring Boot. – luboskrnac