Spring batch 为事务管理集成Spring引导、Spring批处理、Spring数据jpa的问题
我面临与事务管理(特别是需要新的事务注释)相关的问题,详情如下:Spring batch 为事务管理集成Spring引导、Spring批处理、Spring数据jpa的问题,spring-batch,spring-data-jpa,spring-boot,Spring Batch,Spring Data Jpa,Spring Boot,我面临与事务管理(特别是需要新的事务注释)相关的问题,详情如下: 我使用了带有 A.弹簧靴启动器批次 Bspring引导启动器数据jpa 为此,我还使用了hibernate最新版本 我的jpa配置相关代码如下所示: @Configuration @ComponentScan @EnableTransactionManagement @EnableJpaRepositories(basePackages = "xyz.persistence.repository") public class Jp
A.弹簧靴启动器批次
Bspring引导启动器数据jpa
@Configuration
@ComponentScan
@EnableTransactionManagement
@EnableJpaRepositories(basePackages = "xyz.persistence.repository")
public class JpaConfig {
@Bean
public JpaVendorAdapter jpaVendorAdapter() {
HibernateJpaVendorAdapter hibernateJpaVendorAdapter = new HibernateJpaVendorAdapter();
hibernateJpaVendorAdapter.setShowSql(false);
hibernateJpaVendorAdapter.setGenerateDdl(false);
hibernateJpaVendorAdapter.setDatabase(Database.MYSQL);
return hibernateJpaVendorAdapter;
}
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource, JpaVendorAdapter jpaVendorAdapter) {
LocalContainerEntityManagerFactoryBean lef = new LocalContainerEntityManagerFactoryBean();
lef.setDataSource(dataSource);
lef.setJpaVendorAdapter(jpaVendorAdapter);
lef.setPackagesToScan("xyz.persistence.domain");
return lef;
}
@Bean
public PlatformTransactionManager transactionManager(EntityManagerFactory entityManagerFactory) {
return new JpaTransactionManager(entityManagerFactory);
}
}
但在执行过程中,我面临着与事务管理相关的问题
我在这个问题中挖掘了北斗七星,发现了如下所列的事件序列:
@Configuration
@ComponentScan
@EnableTransactionManagement
@EnableJpaRepositories(basePackages = "xyz.persistence.repository")
public class JpaConfig {
@Bean
public JpaVendorAdapter jpaVendorAdapter() {
HibernateJpaVendorAdapter hibernateJpaVendorAdapter = new HibernateJpaVendorAdapter();
hibernateJpaVendorAdapter.setShowSql(false);
hibernateJpaVendorAdapter.setGenerateDdl(false);
hibernateJpaVendorAdapter.setDatabase(Database.MYSQL);
return hibernateJpaVendorAdapter;
}
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource, JpaVendorAdapter jpaVendorAdapter) {
LocalContainerEntityManagerFactoryBean lef = new LocalContainerEntityManagerFactoryBean();
lef.setDataSource(dataSource);
lef.setJpaVendorAdapter(jpaVendorAdapter);
lef.setPackagesToScan("xyz.persistence.domain");
return lef;
}
@Bean
public PlatformTransactionManager transactionManager(EntityManagerFactory entityManagerFactory) {
return new JpaTransactionManager(entityManagerFactory);
}
}
Abhay您是否尝试放弃手动配置并选择了
@EnableAutoConfiguration
?我也面临同样的问题,对此有何解决方案?