Bla*_*keH 2 java postgresql spring hibernate jpa
我正在回到Java世界,我正在尝试使用JPA,Hibernate和PostgreSQL配置一个新的Spring Web应用程序.
我发现了许多带有各种XML配置文件的旧示例,我想知道是否有一种首选的新方法来执行此配置而不依赖于XML文件创作.
我需要配置的一些东西是hibernate sql方言,驱动程序等.
将以下片段放入用@Configurationand 注释的类中@EnableTransactionManagement
Hibernate/JPA(编辑packagesToScan String):
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
LocalContainerEntityManagerFactoryBean em = new LocalContainerEntityManagerFactoryBean();
em.setDataSource(dataSource());
em.setPackagesToScan(new String[] { "com.XY.model" });
JpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();
em.setJpaVendorAdapter(vendorAdapter);
em.setJpaProperties(additionalProperties());
return em;
}
Properties additionalProperties() {
Properties properties = new Properties();
properties.setProperty("hibernate.hbm2ddl.auto", "update");
properties.setProperty("hibernate.dialect", "org.hibernate.dialect.PostgreSQL9Dialect");
properties.setProperty("hibernate.show_sql", "true");
return properties;
}
Run Code Online (Sandbox Code Playgroud)
DataSource(编辑用户名,密码和主机地址):
@Bean
public DataSource dataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("org.postgresql.Driver");
dataSource.setUrl("jdbc:postgresql://localhost:port/DB_NAME");
dataSource.setUsername("root");
dataSource.setPassword("");
return dataSource;
}
Run Code Online (Sandbox Code Playgroud)
交易经理:
@Bean
public PlatformTransactionManager transactionManager(EntityManagerFactory emf) {
JpaTransactionManager transactionManager = new JpaTransactionManager();
transactionManager.setEntityManagerFactory(emf);
return transactionManager;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1992 次 |
| 最近记录: |