Spring boot 如何为Springboot H2数据源启用XA?
我应该在下面的spring boot H2数据源配置中更改什么,以确保XA已启用Spring boot 如何为Springboot H2数据源启用XA?,spring-boot,h2,xa,Spring Boot,H2,Xa,我应该在下面的spring boot H2数据源配置中更改什么,以确保XA已启用 @Bean //@ConfigurationProperties(prefix = "spring.datasource") public DataSource h2() { String url = "jdbc:h2:mem:mydatabase;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE"; return DataSourceBuilder.create()
@Bean
//@ConfigurationProperties(prefix = "spring.datasource")
public DataSource h2() {
String url = "jdbc:h2:mem:mydatabase;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE";
return DataSourceBuilder.create()
.url(url)
.driverClassName("org.h2.Driver")
.build();
}
@Bean(name = "entityManagerFactory")
public LocalContainerEntityManagerFactoryBean entityManagerFactory(EntityManagerFactoryBuilder builder) {
return builder
.dataSource(h2())
.packages("demo.h2xa.domain")
.persistenceUnit("mydomainPersistanceUnit")
.build();
}
参考:
将org.h2.jdbcx.JdbcDataSource.class添加为类型有帮助
public DataSource h2() {
String url = "jdbc:h2:mem:mydatabase;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE";
return DataSourceBuilder.create()
.url(url)
.driverClassName("org.h2.Driver")
.type(org.h2.jdbcx.JdbcDataSource.class) //xa datasource
.build();
}