spring @Transactional怎么手动提交 5C

spring 方法加了@Transactional,我想循环一次就提交,怎么搞,开启了事务默认应该是执行完了才全部提交

2

8个回答

配置的事务就是在这个方法执行结束后提交,当然我这样说也不全面,应该说,事务在开启他的那个方法结束后就提交。你这个问题就是你数据库没有学好了,在一个事务空间(就是在一个事务里面)查询到的数据是这个事务空间里面的数据(换句话就是说你在这个事务里面添加的数据,在这个事务本身里面是能够看到的,只是其他事务不能看到这个数据而已)。

0

这个注解是应用到mothod上面的 @Target({ElementType.METHOD, ElementType.TYPE}),你的整个方法是一个事务,没法在方法里面提交。除非你这个方法不注解,方法循环体里面写子方法,子方法注解开启事务。。我觉得是这样的。。

0

中间测试了一下 在service层 循环到一定次数之后 return 是生效的

0

配置的事务就是在这个方法执行结束后提交,当然我这样说也不全面,应该说,事务在开启他的那个方法结束后就提交。你这个问题就是你数据库没有学好了,在一个事务空间(就是在一个事务里面)查询到的数据是这个事务空间里面的数据(换句话就是说你在这个事务里面添加的数据,在这个事务本身里面是能够看到的,只是其他事务不能看到这个数据而已)。

0

我没试过啊,你看看行不
把你的业务分层 控制-服务-dao,在dao层的方法加事务,在服务层里循环调用dao层方法
但是你这么做,如果是最高级别的隔离等级,会让这个方法变成单例的,每个客户端的人调用时时排队的

0

TransactionSynchronizationUtils.triggerFlush()

0

如果在方法上加了@transcation 是方法中所有操作数据库的地方都成功后才commit 如果有一个地方错了 就会rollback

0

可以洗手动提交,但不能用@Transactional
参考下:https://www.cnblogs.com/banning/p/6346669.html

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Spring手动提交事物
ContextLoaderListener监听器的作用就是启动Web容器时,自动装配ApplicationContext的配置信息。因为它实现了ServletContextListener这个接口,在web.xml配置这个监听器,启动容器时,就会默认执行它实现的方法。至于ApplicationContext.xml这个配置文件部署在哪,如何配置多个xml文件,书上都没怎么详细说明。现在的方法就是查
spring 声明式事务手动提交
//注入对应事务管理,本例为JPA @Autowired JpaTransactionManager transactionManager; //具体方法中加入 DefaultTransactionDefinition def = new DefaultTransactionDefinition(); def.setPropagationBehavior(TransactionDe...
spring事务手动提交
原文地址:https://blog.csdn.net/qq_31138523/article/details/70239465 首先,就我的理解。 事务的过程如下:开始事务--------提交/回滚事务。 事务就是一系列执行的过程。 开始之后,就会执行过程,并且记住过程。这个时候,数据库中所用的表是被锁定了的。 所以说,如果你只开始了事务,没有进行commit或者rollback,数据库中的...
Spring使用注解@Transactional事物手动回滚
手动回滚:方法1:在service层方法的catch语句中增加:TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();语句,手动回滚,这样上层就无需去处理异常(现在项目的做法) 方法2:例如service层处理事务,那么service中的方法中不做异常捕获,或者在catch语句中最后增加throw new Run...
Spring @Transactional 到底是怎么工作的?
在这篇文章中,我们将会深入分析spring 事务管理机制,我们将看到@Transactional是如何工作的。 JPA和事务管理 注意到JPA自己并不提供任何类型的声明的事务管理是很重要的。当在一个依赖注入容器中的外部使用JPA时,事务需要由开发者手动管理 UserTransaction utx = entityManager.getTransaction(); try {
手动回滚@Transactional事物
1. 方法上要有@Transactional注解 2. 在需要回滚的地方: TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 例: @Override @Transactional public Object wordEnter(List wordTest) throws Exce...
spring的@Transactional到底是怎么工作的
在这篇文章中,我们将深入了解spring的事务管理。@Transactional实际上是怎么工作的 JPA和事务管理 注意到JPA自己并不提供任何声明的类型管理是很重要的,当在一个依赖注入容器的外部使用JPA的时候,事务需要开发人员使用代码来处理。 UserTransaction utx = entityManager.getTransaction(); try { utx.be
Spring手动控制事务提交
1、配置文件applicationContext.xml: <beanid="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource"/> 2、在需要加事务的方法上加上 DataSourceTransacti...
spring手动开启、提交、回滚事务
spring配置文件: java文件中的使用: @Autowired private DataSourceTransactionManager transactionManager;  //1.获取事务定义 DefaultTransactionDefinition def = new DefaultTransaction
Spring的@Transactional事务注意事项
1、@Transactional应该放在方法级别,不需要使用事务的方法,就不要放置事务,2、查询方法声明不要事务,否则对性能是有影响的。3、对同一个类里的方法调用, @Transactional无效 内部方法使用this.方式调用,没有通过spring获取调用,无法AOP 解决方法:通过ApplicationContext获取bean的方式进行调用。4、@Transactional注解方法...
@Transactional spring事务
业务bean:rn[color=blue]@Transactional[/color]rnpublic class PersonServiceBean implements PersonService rn @Resource private SessionFactory sessionFactory;rnrn public void save(Person person)rn sessionFactory.getCurrentSession().persist(person);rn session,persist()rn rn rn public void update(Person person)rn sessionFactory.getCurrentSession().merge(person);rn rn rn [color=red]@Transactional(propagation=Propagation.NOT_SUPPORTED,readOnly=true)[/color]rn public Person getPerson(Integer personId)rn return (Person)sessionFactory.getCurrentSession().get(Person.class, personId);rn rn rn public void delete(Integer personId)rn sessionFactory.getCurrentSession().delete(rn sessionFactory.getCurrentSession().load(Person.class, personId));rn rnrnrnrnspring配置文件:rnrn rn rnrn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn com/tank/bean/Person.hbm.xml rn rn rn rn org.hibernate.dialect.Oracle9Dialectrn update rn true rn false rn true false org.hibernate.cache.EhCacheProvider rn rn rn rnrn rn rn rn rnrn rnrn rn rn rn rn rn rn rn rn rn [color=red] [/color]rn rn rn rn rn rn rn[b] rn问题:[/b]rn 这个方法已经为只读,但仍能保存进数据库rn业务bean已经被@Transactional了。rn 如果我在save()方法上在注明@Transactional(propagation=Propagation.SUPPORTES)的话,可以生效!!rn什么原因?貌似管理也有啊!!!
spring源码阅读--@Transactional实现原理
@Transactional注解简介 @Transactional是spring中声明式事务管理的注解配置方式,相信这个注解的作用大家都很清楚。@Transactional注解可以帮助我们把事务开启、提交或者回滚的操作,通过aop的方式进行管理。通过@Transactional注解就能让spring为我们管理事务,免去了重复的事务管理逻辑,减少对业务代码的侵入,使我们开发人员能够专注于业务层面开发...
Spring @Transactional使用错误
这两天在学习Spring申明式事务管理时,使用annotation时,老是提示错误。跟上配置文件:rn[code=java]rn rn rn rn com/mvc/s2sh/Person.hbm.xmlrn com/mvc/s2sh/Logger.hbm.xmlrn rn rn rn rn hibernate.dialect=org.hibernate.dialect.MySQLDialectrn hibernate.show_sql=truern current_session_context_class=threadrn rn rn rn rn rn rn rn [/code]rnrn[b][color=#FF0000]我想在service层,模拟当存入一个用户时,同时记录一个日志:[/color][/b][size=16px][/size][code=java]@Transactionalrn public void save(Person p)rn po.save(p);rn Logger logger=new Logger();rn logger.setContent("我存了条记录");rn lo.save(logger);rn [/code]rnrn不过老是报如下的错误:[code=java]org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'personService' defined in file [F:\MyEclipse10\Spring_proxy\bin\com\mvc\s2sh\PersonService.class]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'org.springframework.transaction.interceptor.TransactionInterceptor#0' must be of type [org.aopalliance.aop.Advice], but was actually of type [org.springframework.transaction.interceptor.TransactionInterceptor]rn at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:532)rn at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461)rn at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295)rn at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)rn at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292)rn at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)rn at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:626)rn at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)rn at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)rn at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)rn at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:83)rn at com.mvc.s2sh.TestDataSource.testHibernate(TestDataSource.java:10)rn at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)rn at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)rn at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)rn at java.lang.reflect.Method.invoke(Method.java:597)rn at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)rn at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)rn at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)rn at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)rn at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79)rn at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)rn at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)rn at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)rn at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)rn at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)rn at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)rn at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)rn at org.junit.runners.ParentRunner.run(ParentRunner.java:236)rn at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)rn at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)rn at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)rn at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)rn at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)rn at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)rnCaused by: org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'org.springframework.transaction.interceptor.TransactionInterceptor#0' must be of type [org.aopalliance.aop.Advice], but was actually of type [org.springframework.transaction.interceptor.TransactionInterceptor]rn at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:361)rn at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:198)rn at org.springframework.aop.support.AbstractBeanFactoryPointcutAdvisor.getAdvice(AbstractBeanFactoryPointcutAdvisor.java:86)rn at org.springframework.aop.aspectj.AspectJProxyUtils.isAspectJAdvice(AspectJProxyUtils.java:66)rn at org.springframework.aop.aspectj.AspectJProxyUtils.makeAdvisorChainAspectJCapableIfNecessary(AspectJProxyUtils.java:49)rn at org.springframework.aop.aspectj.autoproxy.AspectJAwareAdvisorAutoProxyCreator.extendAdvisors(AspectJAwareAdvisorAutoProxyCreator.java:97)rn at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator.findEligibleAdvisors(AbstractAdvisorAutoProxyCreator.java:89)rn at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator.getAdvicesAndAdvisorsForBean(AbstractAdvisorAutoProxyCreator.java:69)rn at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.wrapIfNecessary(AbstractAutoProxyCreator.java:359)rn at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.postProcessAfterInitialization(AbstractAutoProxyCreator.java:322)rn at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:412)rn at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1494)rn at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524)rn ... 34 morernrn[/code]rnrn不知道这是什么原因?我也照着一些资料上面,也不知道是哪里出的错。我使用的是Spring3.2和hibernate4.1.9rn希望大家能帮忙下,谢谢了[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/monkey/11.gif][/img]
@Transactional、Spring的声明式事务
传送门 一、Spring的声明式事务 需要在xml文件中配置 <!--配置事务管理器类--> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <!--这里的dataSource引用前边配...
Spring声明式事务的使用(@Transactional)
前言 Spring声明式事务是基于Spring AOP实现的,如果对Spring AOP不太了解,可以先了解一下Spring AOP。 事务约定 对于声明式事务,时使用@Transactional注解进行标注的。这个标注可以标注在类或者方法上,当它标注在类上时,代表这个类所有公共(public)非静态的方法都将启用事务功能。 在@Transactional中,还允许配置多种配置,如:事务的...
Spring声明式事务注解@Transactional
spring支持编程式事务管理和声明式事务管理两种方式。 编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使用TransactionTemplate。 声明式事务管理建立在AOP之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚
Spring 2.5.5 @Transactional 的问题
在一个新项目里打算开始用Spring 2.5.5和大量使用annotation,可是@Transactional总是玩不转。rnrn在applicationContext.xml里面:rnrn[code="xml"]rnrn rn rn rnrn rn rn rn rnrn rn[/code]rnrn定义一个Business Interface:rnrn[code="java"]rnpublic interface SomeService rn void foobar();rnrn[/code]rnrn实现类:rnrn[code="java"]rn@Service("someService")rnpublic class SomeServiceImpl implements SomeService rn @Resource(name="someDAO")rn private SomeDAO someDAO;rn rn @Transactional (readOnly=false, isolation = Isolation.READ_COMMITTED)rn public void foobar() rn someDAO.foobar();rn rnrn[/code]rnrnWeb Controllerrnrn[code="java"]rnpublic class SomeController rn @Resource(name="someService")rn private SomeService someService;rnrn[/code]rnrn这里面用的是普通的JdbcTemplate, 结构是经典的Controller-Service-DAO.rnrn换回经典的TransactionProxyFactoryBean, 工作的好好的。rnrn我是不是什么地方忘配置了?rnrnClasspath下面只有spring.jar 和 spring-mvc.jar,试了把 cglib-nodep-2.1_3.jar 拷贝过去也没用。rnrn比如说我这个business method 调用DAO两个方法,第一个成功了,第二个违反数据库的constraint,失败了,那么事务回滚应该把第一个DAO的更改rollback,但是这里@Transactional一点作用都没有,打开Spring的logging发现它根本就没调用任何和Transaction有关的Interceptor. rnrn比如我在business method里面,调用DAO方法后,写个throw new RuntimeException,那么如果事务配置好了,应该rollback, 但是这里Transaction一点作用没有。 rnrn如果把配置改成在XML里用TransactionProxyFactoryBean, 就工作了。 rnrn这个Transactional annotation就不工作。 rnrn折腾了一天,实在黔驴技穷了。n[b]问题补充:[/b]n先扯点离题的:rnrn实在不好意思,作为老会员,没有关心网站的新进展,前两天在Java论坛先发了个帖子问这个问题,发完了发现问题该发到问答频道去,于是又重发了一份,本来想发个短信给管理员删掉论坛帖子的,但当时已经半夜三点了,太困了,想第二天起来发,第二天起来管理员已经把论坛帖子移到问答频道去了,结果问答频道有两个同样的问题,rnrnhttp://www.iteye.com/problems/2646rnrnhttp://www.iteye.com/problems/2649rnrn在两边都有热心网友回答。rnrn这个2646号问题是我自己写的,40金悬赏旬,请大家去问题2646跟踪最新更新吧,特别感谢小疯子还自己写了程序试验。rnrn我已经请求管理员删除这个2649号问题,把大家的回答搬到2646去。rnn[b]问题补充:[/b]nsw2-long 的方式是工作的。yangke_love的解法要用到AspectJ,但在这里简单的情况下JDK Proxy完全可以胜任的。rnrn已经向Spring Jira提交了一个bug 报告,SPR-5082rnrnhttp://jira.springframework.org/browse/SPR-5082?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=38892rnrn里面带了一个完整的事例来演示这个bug。rnrn看看他们怎么回吧。
spring手动进行事务提交/回滚
DataSourceTransactionManager transactionManager = (DataSourceTransactionManager) SpringUtils.getApplicationContext().getBean("transactionManager"); DefaultTransactionDefinition def = new D...
如何手动提交spring DAO层事务
如题所述,项目用sping进行事务控制的,但是目前单元测试DAO层的数据库操作时,不想用spring进行事务控制,想手动提交事务,该如何进行?rnDAO层方法的代码如下:rn[code=Java]rnpublic void removeOrUpdate(final String hql, final Object[] values,rn final boolean t) throws DAOException rn try rn getHibernateTemplate().execute(new HibernateCallback() rnrn public Object doInHibernate(Session session)rn throws HibernateException, SQLException rn List result = new ArrayList();rn Query query = session.getNamedQuery(hql);rn if (values != null) rn for (int i = 0; i < values.length - 1; i++) rn query.setParameter(i, values[i]);rn rn if (t)rn query.setParameterList("ids",rn (String[]) values[values.length - 1]);rn elsern query.setParameter(values.length - 1,rn values[values.length - 1]);rnrn rnrn result.add(query.executeUpdate());rn return result;rn //for testrn rnrn rnrn );rn catch (Exception e) rn log.error("批量删除或更新对象出错");rn throw new DAOException(e.getMessage());rnrn rnrn rn[/code]rnrnrnrn单元测试的代码如下:rn[code=Java]rn public void testRemoveOrUpdate() rn Transaction tx= baseDAO.getHibernateTemplate().getSessionFactory().getCurrentSession().beginTransaction(); rn tx.begin(); rn String hql = "UPDATE_CHECK_AND_LEVEL";rn Date approveDate = new Date(System.currentTimeMillis());// 获取当前时间rn Object[] values = approveDate, "8aa2b2671eced198511ecedab3c10327" ;rn Boolean t=false;rn baseDAO.removeOrUpdate(hql, values, t);rn tx.commit();rn rn[/code]rnrn在单元测试的方法中用baseDAO.getHibernateTemplate().getSessionFactory().getCurrentSession().beginTransaction()的currentSession报出“找不到当前线程的session”,就是不知道该如何调用到DAO的线程session,所以事务无法进行提交。用getSessionFactory().openSession()方法的话是新创建一个Session,与spring的getHibernateTemplate中的session不是同一个,所以也是无法提交事务。。。各位大虾有米有遇到类似的问题,,帮忙出谋划策下。。。。
Spring 下的事务可以进行手动提交么!
使用了String+struts+Hibernate的框架rn在一个Service层的方法中多次查询数据库和向数据库中写入数据。出现数据写入不成功。并且没有报错。rn怀疑是事务的问题。想问一下在Spring配置下的Hibernate的事务能否在程序中手动进行提交rnrn请高手帮忙!
Spring怎么手动搭框架
下载下来的文件,里面东西太多 找不到包在那里
spring的@Transactional注解详细用法
概述 事务管理对于企业应用来说是至关重要的,即使出现异常情况,它也可以保证数据的一致性。 Spring Framework对事务管理提供了一致的抽象,其特点如下: 为不同的事务API提供一致的编程模型,比如JTA(Java Transaction API), JDBC, Hibernate, JPA(Java Persistence API和JDO(Java Data Objects) 支持声明...
@Transactional spring 配置事务 注意事项
1. 在需要事务管理的地方加@Transactional 注解。@Transactional 注解可以被应用于接口定义和接口方法、类定义和类的 public 方法上。 2. @Transactional 注解只能应用到 public 可见度的方法上。 如果你在 protected、private 或者 package-visible 的方法上使用 @Transactional 注解,它也不会报错...
Spring @Transactional的简单配置总结
为什么80%的码农都做不了架构师?&gt;&gt;&gt; ...
Spring事务的传播行为 @Transactional
Spring事务的传播行为http://blog.csdn.net/cuker919/article/details/5957209   在service类前加上@Transactional,声明这个service所有方法需要事务管理。每一个业务方法开始时都会打开一个事务。 Spring默认情况下会对运行期例外(RunTimeException)进行事务回滚。这个例外是unchecked...
Spring @Transactional注解使用注意事项
1 注意设置rollbackFor属性,很多博客说默认只有RuntimeExcetion会触发回滚,经验证确实如此,所以rollbackFor最好应该设置如下:rollbackFor = {Exception.class},当然具体业务具体处理,可能有的业务抛出的某些异常并不需要触发回滚,所以此时应该细化处理异常。   2 MySQL数据库表引擎应为InnoDB,否则不支持事务。但是XML...
spring 3.2 @Transactional(readOnly = true)
spring 3.2 @Transactional(readOnly = true) n开启只读事务nnn```n public List findAll() n log.debug("finding all ParkRuleConfig2 instances");n try n String queryString = "from ParkRuleConfig2";n return getHibernateTemplate().find(queryString);n catch (RuntimeException re) n log.error("find all failed", re);n throw re;n n n```n本以为一个简单查询语句,却捣鼓了好久!n一直报错,如下:nnn```n 严重: Servlet.service() for servlet [mvc] in context with path [/easypark] threw exception [Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is java.lang.NoSuchFieldError: MANUAL] with root causenjava.lang.NoSuchFieldError: MANUALn at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:531)n at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:372)n at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:417)n at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:255)n at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)n at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)n at com.sun.proxy.$Proxy12.getparkRuleConfigNidList(Unknown Source)n at com.bitcom.platform.maintain.web.ChargePolicyController.getparkRuleConfigNidList(ChargePolicyController.java:302)n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)n at java.lang.reflect.Method.invoke(Method.java:606)n at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:219)n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745)n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:686)n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:936)n at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:838)n at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:812)n at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)n at com.bitcom.platform.common.filter.AMFContextFilter.doFilter(AMFContextFilter.java:58)n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)n at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)n at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)n at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)n at java.lang.Thread.run(Thread.java:744)nn```nnn
Spring 声明式事务@Transactional不起作用,为什么
[code=java]rnrn rn rn rn rn rn rn rn rn rn rn rn rnrn rn rn rn rnrn rn rn rn classpath*:c3p0.propertiesrn rn rn rnrn rn rn rn[/code]rnrnrn[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/onion/56.gif][/img] 求大神帮助
SpringBoot 事务注解@Transactional 手动回滚事务
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 这个方法根本没有用不会回滚 throw new RuntimeException(); 手动抛出异常 注意了:SpringBoot 事务注解@Transactional只有在程序抛出RuntimeException 非检查异常和检...
Spring中注解方式的事务@Transactional
@Transactional 注解管理事务的实现步骤使用@Transactional 注解管理事务的实现步骤分为两步。第一步,在 xml 配置文件中添加如清单 1 的事务配置信息。除了用配置文件的方式,@EnableTransactionManagement 注解也可以启用事务管理功能。这里以简单的 DataSourceTransactionManager 为例。清单 ...
Spring声明式事务@Transactional传播行为
propagation = Propagation.REQUIRED 默认的传播行为,该方法需要再事务环境下运行,被调用的方法有事务的话就和它在同一个事务下属于平级那一个异常都会回滚,没有就自己开启新的事务,调用别的没事务的方法会把它加到同一个事务中。下面会给出相应example 调用A方法 @Transactional(rollbackFor = Exception.class) @O...
Spring注解@Transactional事务的基本原理
一、事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,spring是无法提供事务功能的。对于纯JDBC操作数据库,想要用到事务,可以按照以下步骤进行: 1、获取连接 Connection con = DriverManager.getConnection() 2、开启事务con.setAutoCommit(true/false); 3、执行CRUD ...
spring @Transactional注解参数详解(转载)
事物注解方式: @Transactional 当标于类前时, 标示类中所有方法都进行事物处理,例子: 1 @Transactional public class TestServiceBean implements TestService {} 当类中某些方法不需要事物时: 1 @Transactional 2 public class TestService...
spring的事务解决方案之@Transactional注解
首先此注解位于 org.springframework.transaction.annotation 这个包路径下面, 事务有两种类别,一种是编程式事务,另一种是声明式事务,显然此注解是声明式事务,这也是spring Aop倡导的非侵入式代码风格,通过方法的前后拦截,实现对事务的控制几个重要的英文含义:transaction /træn'zækʃən/ n. 交易;事务;办理;会报,学报pro...
spring事物管理及@Transactional注解用法
一、什么是事物        在我们开发过程中,有很多需要事物的业务场景。比如:在我们转账的场景中,用户A需要转账500元给用户B。在用户A账户中扣除500元后,发生了异常,这时候用户B增加500元的语句可能就不会执行。就会导致转账的丢失。此时就需要事物管理将扣除500元的操作进行回滚。也就是说事物内的语句,要么全部执行成功,要么全部执行失败。 二、事物管理的几种方式 spring中的事物管...
Spring 中@Transactional注解参数详解
事物注解方式: @Transactional 当标于类前时, 标示类中所有方法都进行事物处理,例子: 1 @Transactional public class TestServiceBean implements TestService {} 当类中某些方法不需要事物时: @Transactional public class TestServiceB...
spring boot的事务管理不起作用@Transactional
表类型是MyISAM,是非事务安全的,所以无法实现数据回滚。  只要修改表的类型即可: ALTER TABLE t1 ENGINE = InnoDB
Spring事务管理(基于@Transactional注解)
【例子】银行转账一、创建相关类AccountBiz类package com.tx; public class AccountBiz { private AccountDao accountDao; public void setAccountDao(AccountDao accountDao) { this.accountDao = accountDao; } //银行转账 publ...
Spring事务管理中@Transactional的参数配置
http://deltamaster.is-programmer.com/posts/28488.html
仰天长啸 Spring 之注解事务 @Transactional
spring 事务注解 默认遇到throw new RuntimeException(&quot;...&quot;);会回滚 需要捕获的throw new Exception(&quot;...&quot;);不会回滚 // 指定回滚 @Transactional(rollbackFor=Exception.class)      public void methodName() {        // 不会回滚       ...
相关热词 c#异步发送kafka c#窗体编号 c# 操作二进制文件 c# 反射 机制 c#线程 窗体失去响应 c#角度转弧度 c# 解析gps数据 c# vs设置 语法版本 c# json含回车 c#多线程demo