spring-java的service层多个方法嵌套的事务问题

问题描述

java的service层多个方法嵌套的事务问题
spring的配置文件中配置的注解事务,我在service层A方法前没有添加@Transactional注解,而是手动控制事务的提交,
A方法的执行基于B方法正确执行,B方法也需要对数据库多个表进行添加操作,也需要事务,
我在A中session.beginTransaction();总是报事务未正确开始,什么原因?

解决方案

http://blog.csdn.net/dysh61301601/article/details/3237089

时间: 2024-09-20 20:03:07

spring-java的service层多个方法嵌套的事务问题的相关文章

急急急!Struts2+spring+ibatis+oracle service层事务不能回滚,请高手指点

问题描述 事务配置<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:aop="http://www.springframework.org/sche

c#客户端调用java web service的插入对象方法时出现错误客户端发现响应内容类型为“text/html;charset=utf-8”,但应为“tex

问题描述 在javawebservice中发布了一个insertObject(Objecto)的方法,其中传入的o是hibernate中的pojo类在c#客户端调用时出现警告:客户端发现响应内容类型为"text/html;charset=utf-8",但应为"text/xml".请求失败,错误信息为:--<html><head><title>ApacheTomcat/5.5.20-Errorreport</title>

5大java数据计算层的解决方法

我们都知道,数据计算层是指介于数据持久层和应用程序层之间,负责计算来自数据持久层的数据,并将计算结果返回应用程序层的层次.而JAVA的数据计算层主要是为了降低应用程序层和数据持久层之间的耦合性,分担它们的计算压力. 因此,它应当符合如下特征: 1. 可以统一的计算来自任意数据持久层的数据,不仅包括数据库,也包括非数据库的Excel/Txt/XML.其中对最常见的结构化数据的计算是重点. 2. 可以统一的进行不同种类数据源之间的相互计算.不仅包括异种数据库之间,也包括数据库和非数据库之间的计算.

spring-Spring MVC + hibernate service层和dao层

问题描述 Spring MVC + hibernate service层和dao层 Spring MVC + hibernate service层和dao层 方法头上都加上@Transactional会识别哪个 service层: @Override @Transactional public Future save(UserVO userVO) { this.myUserDao().saveUser(user); ... dao层: @Override @Transactional(propa

使用Spring对Service层进行测试,无法查询到刚刚插入的记录?

问题描述 如题,本人使用Spring提供的:AbstractTransactionalDataSourceSpringContextTests类对Service层进行测试.测试的方法是向数据库中插入一条用户记录,然后再重新检索出来.代码如下:[1]DAO层代码:public User saveUser(User newUser) {getHibernateTemplate().save(newUser);//getHibernateTemplate().flush();return (User)

spring事务回滚只能配在service层吗。为什么我想在Test中添加事务不能进行回滚呢

问题描述 spring事务回滚只能配在service层吗.为什么我想在Test中添加事务不能进行回滚呢 <tx:advice id="txAdvice2" transaction-manager="txManager"> <tx:attributes> <tx:method name="inserttwo*" propagation="REQUIRED"/> </tx:attribut

spring学习笔记(21)编程式事务配置,service层概念引入

访问数据库事务导入 在我之前的文章<spring学习笔记(19)mysql读写分离后端AOP控制实例>中模拟数据库读写分离的例子,在访问数据库时使用的方法是: public <E> E add(Object object) { return (E) getSessionFactory().openSession().save(object); } 通过直接开启session而后保存对象.查询数据等操作,是没有事务的.而如果我们的项目规模变大,业务逻辑日益复杂,我们在一个方法中进行大

spring声明式事务,service层必须在ioc容器中声明?

问题描述 各位,小弟在学习spring+hibernate 声明式事务时,发现一个问题, 做了两种测试1. 建立一个普通的 java projectx.y.services 包下有 applicationContext.xml, DefaultFooService.java, 在applicationContext.xml中对DefaultFooService进行声明式事务,并注入 DefaultFooService运行后成功实现事务管理2. 建立一个 web dynamic project在a

Service层getParameter方法接受字符转换成int类型

String类型转化成int类型,不论哪种情况,在java中都能转化. 无论是在domain实体类中,还是在Dao(数据访问层),Service层(服务层)也行. 除去强制转换,项目开发总一共还有两种方法 public void getPost(HttpServletRequest request){ String str = request.getParameter("classId"): //方法一 int classId = Integer.parseInt(request.ge