我创建了一个基于spring-boot的java应用程序,它使用spring的任务。这是一个基于控制台的java应用程序,它也使用hibernate来访问数据库。此应用程序基于任务的弹簧样本,并使用注释而不是配置文件。对于hibernate,我实际上是在使用hibernate.cfg.xml并自己初始化hibernate会话工厂。
我想使用Spring的声明事务管理,但它们无法正常工作,因为我无法找到如何通过注释初始化spring session factory的示例。所有示例都通过配置文件显示配置。任何人都可以指出如何使用注释和代码通过spring初始化hibernate会话工厂,以便spring的声明式事务可以工作。
提前致谢。
瓦卡
答案 0 :(得分:0)
@Configuration
@EnableTransactionManagement
public class AppConfig {
@Bean
public FooRepository fooRepository() {
// configure and return a class having @Transactional methods
return new JdbcFooRepository(dataSource());
}
@Bean
public DataSource dataSource() {
// configure and return the necessary JDBC DataSource
}
@Bean
public PlatformTransactionManager txManager() {
return new DataSourceTransactionManager(dataSource());
}
}