gpt4 book ai didi

java - 没有 Spring 的 Atomikos 事务管理器

转载 作者:行者123 更新时间:2023-12-01 09:35:05 24 4
gpt4 key购买 nike

我尝试在不使用 spring 的情况下配置 Atomikos Transaction。首先,我尝试在不使用 spring 的情况下设置 EntityManagerFactory,以下是我尝试过的代码

private static AtomikosDataSourceBean prepareDataSource(){
AtomikosDataSourceBean atomikosDataSourceBean = new AtomikosDataSourceBean();
atomikosDataSourceBean.setUniqueResourceName("demo");
atomikosDataSourceBean.setXaDataSourceClassName("oracle.jdbc.xa.client.OracleXADataSource");
Properties properties = new Properties();
properties.setProperty("user", "demo");
properties.setProperty("password", "demo");
properties.setProperty("URL", "dbc:oracle:thin:@localhost:1521/xe");
atomikosDataSourceBean.setXaProperties(properties);
return atomikosDataSourceBean;
}


public static EntityManagerFactory getEntityManagerFactory(){
LocalContainerEntityManagerFactoryBean entityManagerFactory = new LocalContainerEntityManagerFactoryBean();
entityManagerFactory.setDataSource(prepareDataSource());
entityManagerFactory.setPersistenceUnitName("demo");
entityManagerFactory.setPersistenceXmlLocation("classpath*:META-INF/persistence.xml");
Properties properties = new Properties();
properties.setProperty("hibernate.transaction.jta.platform", "com.demo.AtomikosJtaPlatform");
properties.setProperty("hibernate.show_sql", "true");
return (EntityManagerFactory) entityManagerFactory;

}

上面的代码返回了一个classcastException。我怎样才能在不使用spring的情况下获得相同的entitymanagerfactory

最佳答案

我会引用 Atomikos 的官方文档,其中实际上为那些选择不使用 Spring 的人提供了一个示例:

Atomikos without Spring

关于java - 没有 Spring 的 Atomikos 事务管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39053062/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com