在我的公司,不鼓励使用Spring框架,而是提倡使用JavaEE6。但最近我在Using@Transactional阅读了有关Springs@Transactional注释的信息。并认为这对我们的代码非常有用。据我所知,使用@Transactional注释的方法将重用一个已经存在的事务,或者如果在调用该方法时不存在Activity事务则打开一个新事务。JavaEE6中是否有类似的东西(例如,类似的注释)可用? 最佳答案 EJB组件在JavaEE中具有这种事务控制。您可以将EJB上方法的事务设置为Required、RequiresNe
在我的应用程序中,在创建任务时,我需要对Google进行API调用以创建Google日历事件。我决定在一个单独的线程上进行API调用,这样我们的客户端就不必等待更长时间的响应。@Override@Transactional(rollbackFor=DataException.class)publicTaskResponseBeancreateTask(TaskCreationBeantaskCreationBean,UserAccessDetailsaccessDetails)throwsDataException{StringgoogleEventId="";try{TaskServ
这是示例spring上下文文件的一部分。我正在尝试为SampClass创建事务建议以在保存方法上执行。所以根据我的理解,它应该只为SampClass创建一个代理。我有一个SearchDispatchRpcGwtServlet,它以一个web服务客户端作为参数,它本身也是一个代理。此bean也由于某种原因而被代理,但由于无法创建代理的代理而失败。我必须补充一点,SearchDispatchRpcGwtServlet创建了一个SampClass的实例并调用了保存方法。我得到以下异常:java.lang.IllegalArgumentException:Cannotsubclassfinal
在REQUIRED传播的情况下,当调用方方法本身是事务性的时,如果它们不同,当前方法是否会覆盖封闭的事务属性(例如rollbackFor)?插图:ClassA{@Transactional(propagation=Propagation.REQUIRED,rollbackFor={SomeException.class})voidfoo(){try{b.bar();}catch(OtherExceptione){//isthetransactionmarkedasrollback-onlyatthispoint?}}}ClassB{@Transactional(propagation=
如果打开自动提交,回滚是否有效?如果不是那么关闭自动提交的含义是什么?@Transactional(rollbackFor={ManagerException.class})publicmyMethod()....{System.out.printLn(my_spring_stored_procedure.getDataSource().getConnection().getAutoCommit())//true....try{result=this.my_spring_stored_procedure.execute(params);}catch(DataAccessExceptio
我有一个关于@Transactional注释如何单独管理代码和事务执行的问题。给定正确设置的Spring应用程序和以下代码:@Transactionalpublicvoidwithdraw(intamount){if(isEnoughFunds(amount)){decreaseFunds(amount);}}是否有可能出现如下场景:资金==100;金额==100线程A进入withdraw/事务A开始线程A执行isEnoughFunds,结果为真线程B进入withdraw/事务B开始线程B执行isEnoughFunds计算结果为真线程A执行decreaseFunds/线程A锁定数据库记
下面是spring配置日期来源实体管理器配置下面是用于持久化实体的代码片段@Singleton@ComponentpublicclassRWTransactionDao{@PersistenceContext(type=PersistenceContextType.EXTENDED)privateEntityManagerem;@OverrideprotectedEntityManagergetEntityManager(){returnem;}@TransactionalpublicvoidcreateOrderTxns(RWRetailTransactionpeTxn,RWReta
如果有人实现了事务写入文件,请帮助我。相关主题已在较早的线程(transactionalwrite)中讨论过。用例如下:如果写入日志文件失败,应回滚相应的数据库事务。因此写入文件应该以事务方式执行。我选择了ApacheCommonsTransaction库。有问题,这不会让我更进一步,因为没有找到合适的文档或示例。我已经创建了FileResourceManager实例:FileResourceManagerfrm=newFileResourceManager("c:\cur","c:\cur",true,logger);据我了解ApacheCommonsTransactiontutor
我必须在我的网络应用程序中使用3个不同的事务管理器。所以我根据Springreference写了自己的Annotation(第10.5.6.3节自定义快捷方式注释)。一个注释(用于使用一个特定的事务管理器)如下所示:importjava.lang.annotation.ElementType;importjava.lang.annotation.Retention;importjava.lang.annotation.RetentionPolicy;importjava.lang.annotation.Target;importorg.springframework.transacti
当尝试在事务之间测试Hibernate(版本4)EHCache的缓存功能时-它失败了:无法为测试上下文的@Transactional测试检索PlatformTransactionManager。测试@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(classes={ApplicationConfig.class,CachingConfig.class},loader=AnnotationConfigContextLoader.class)@PersistenceContext@Transactionalpublic