Проблема передачи настроек в LocalEntityManagerFactoryBean
Есть вот такой класс
Configuration
@EnableTransactionManagement
@EnableJpaRepositories(basePackages = "web")
@PropertySource("classpath:db.properties")
public class HibernateConfig {
@Autowired
private Environment env;
@Bean
public LocalEntityManagerFactoryBean entityManagerFactory() {
LocalEntityManagerFactoryBean factoryBean = new LocalEntityManagerFactoryBean();
Properties props=new Properties();
props.put("hibernate.show_sql", env.getProperty("hibernate.show_sql"));
props.put("hibernate.hbm2ddl.auto", env.getProperty("hibernate.hbm2ddl.auto"));
props.put("hibernate.dialect",env.getProperty("hibernate.dialect"));
props.put("javax.persistence.jdbc.url",env.getProperty("db.url"));
props.put("javax.persistence.jdbc.user",env.getProperty("db.username"));
props.put("javax.persistence.jdbc.password",env.getProperty("db.password"));
props.put("javax.persistence.jdbc.driver",env.getProperty("db.driver"));
return factoryBean;
}
@Bean
public JpaTransactionManager transactionManager(EntityManagerFactory entityManagerFactory) {
JpaTransactionManager transactionManager = new JpaTransactionManager();
transactionManager.setEntityManagerFactory(entityManagerFactory);
return transactionManager;
}
}
Не могу найти как передать мой Properties в factoryBean
Файл db.properties
# MySQL properties
db.driver=com.mysql.cj.jdbc.Driver
db.url=jdbc:mysql://localhost:3306/testbase?verifyServerCertificate=false&useSSL=false&requireSSL=false&useLegacyDatetimeCode=false&&serverTimezone=UTC
db.username=root
db.password=root
# Hibernate properties
hibernate.show_sql=true
hibernate.hbm2ddl.auto=update
hibernate.dialect=org.hibernate.dialect.MySQL5Dialect