草庐IT

de_transaction

全部标签

javax.transaction.Transactional 与 org.springframework.transaction.annotation.Transactional

我不明白注释javax.transaction.Transactional和org.springframework.transaction.annotation.Transactional之间的实际区别是什么?org.springframework.transaction.annotation.Transactional是javax.transaction.Transactional的扩展还是它们的含义完全不同?什么时候应该使用它们?Spring@TransactinalinservicelayerandjavaxinDAO?感谢您的回答。 最佳答案

java - Spring - @Transactional - 在后台发生了什么?

我想知道当您使用@Transactional注释方法时实际发生了什么?当然,我知道Spring会将该方法包装在Transaction中。但是,我有以下疑问:听说Spring创建了一个代理类?有人可以更深入解释这一点。该代理类中实际存在什么?实际类(class)会发生什么?以及如何查看Spring创建的代理类我还在Spring文档中读到:Note:Sincethismechanismisbasedonproxies,only'external'methodcallscominginthroughtheproxywillbeintercepted.Thismeansthat'self-in

ruby-on-rails - 错误 : current transaction is aborted, 命令被忽略,直到事务 block 结束,Ruby on Rails

我的应用程序中有一个模型Car。我添加了色域。我的迁移看起来像这样:classAddColorToCars在我的表格中我添加了:=f.input:color在汽车模型中我添加了验证:validates:color,presence:true当我尝试编辑现有Car并将其颜色更改为nil时,出现以下错误:ERROR:currenttransactionisaborted,commandsignoreduntilendoftransactionblock当我禁用验证时,一切正常。怎么了? 最佳答案 这都与transactions有关在Ra

python - DatabaseError : current transaction is aborted, 命令在事务 block 结束之前被忽略?

我收到了很多错误消息:"DatabaseError:currenttransactionisaborted,commandsignoreduntilendoftransactionblock"从python-psycopg更改为python-psycopg2作为Django项目的数据库引擎之后。代码保持不变,只是不知道那些错误来自哪里。 最佳答案 当查询产生错误并且您尝试运行另一个查询而不首先回滚事务时,这就是postgres所做的。(您可能会将其视为一项安全功能,以防止您破坏数据。)要解决此问题,您需要找出代码中执行错误查询的位置

python - DatabaseError : current transaction is aborted, 命令在事务 block 结束之前被忽略?

我收到了很多错误消息:"DatabaseError:currenttransactionisaborted,commandsignoreduntilendoftransactionblock"从python-psycopg更改为python-psycopg2作为Django项目的数据库引擎之后。代码保持不变,只是不知道那些错误来自哪里。 最佳答案 当查询产生错误并且您尝试运行另一个查询而不首先回滚事务时,这就是postgres所做的。(您可能会将其视为一项安全功能,以防止您破坏数据。)要解决此问题,您需要找出代码中执行错误查询的位置

java - 注释@Transactional。如何回滚?

我成功地将这个注解用于一个Dao类。回滚适用于测试。但现在我需要回滚真实代码,而不仅仅是测试。有用于测试的特殊注释。但是哪些注解是针对非测试代码的呢?对我来说这是一个很大的问题。我已经为此花了一天时间。官方文档不符合我的需求。classMyClass{//thisdoesnotmakerollback!AndrecordappearsinDB.EmployeeDaoInterfaceemployeeDao;publicMyClass(){ApplicationContextcontext=newClassPathXmlApplicationContext(newString[]{"Hi

java - 注释@Transactional。如何回滚?

我成功地将这个注解用于一个Dao类。回滚适用于测试。但现在我需要回滚真实代码,而不仅仅是测试。有用于测试的特殊注释。但是哪些注解是针对非测试代码的呢?对我来说这是一个很大的问题。我已经为此花了一天时间。官方文档不符合我的需求。classMyClass{//thisdoesnotmakerollback!AndrecordappearsinDB.EmployeeDaoInterfaceemployeeDao;publicMyClass(){ApplicationContextcontext=newClassPathXmlApplicationContext(newString[]{"Hi

java - @Transactional(传播=传播。需要)

如果有人能解释这个注释的作用以及我们何时使用它:@Transactional(propagation=Propagation.REQUIRED)谢谢 最佳答案 如果您需要在SpringDocs考虑这段代码...classService{@Transactional(propagation=Propagation.REQUIRED)publicvoiddoSomething(){//accessadatabaseusingaDAO}}当doSomething()被调用时,它知道它必须在执行之前在数据库上启动一个事务。如果此方法的调用者

java - @Transactional(传播=传播。需要)

如果有人能解释这个注释的作用以及我们何时使用它:@Transactional(propagation=Propagation.REQUIRED)谢谢 最佳答案 如果您需要在SpringDocs考虑这段代码...classService{@Transactional(propagation=Propagation.REQUIRED)publicvoiddoSomething(){//accessadatabaseusingaDAO}}当doSomething()被调用时,它知道它必须在执行之前在数据库上启动一个事务。如果此方法的调用者

java - Spring @Transactional 属性是否适用于私有(private)方法?

如果我有@Transactional-对Springbean中的私有(private)方法进行注解,注解有什么作用吗?如果@Transactional注释在公共(public)方法上,它会起作用并打开一个事务。publicclassBean{publicvoiddoStuff(){doPrivateStuff();}@TransactionalprivatevoiddoPrivateStuff(){}}...Beanbean=(Bean)appContext.getBean("bean");bean.doStuff(); 最佳答案