spring-ssh声明式事物为什么不能绑定

问题描述

ssh声明式事物为什么不能绑定

我配置spring声明式事物为*Server
我的登陆方法为login没有在事物的范围呢,但里面的getUserInfo在事物范围内,
那么只有get*的话就没有被绑定到线程中,只有配置login才行。为什么?

PROPAGATION_REQUIRED,-java.lang.Throwable

PROPAGATION_REQUIRED,-java.lang.Throwable

PROPAGATION_REQUIRED,-java.lang.Throwable

PROPAGATION_REQUIRED,-java.lang.Throwable

PROPAGATION_REQUIRED,-java.lang.Throwable

PROPAGATION_REQUIRED,-java.lang.Throwable,readOnly

PROPAGATION_REQUIRED,-java.lang.Throwable,readOnly

PROPAGATION_REQUIRED,-java.lang.Throwable

        public Map<String,Object> login(String userName,String passWord) throws ServiceException {
    Map<String,Object> infoMap = new HashMap<String, Object>();
    Boolean isOk = false;//是否登陆成功
    try {
        BaseUser user = getUserInfo(userName);
        passWord = Md5.md5(passWord);
        isOk = isPasswdOk(user,passWord);
        infoMap.put("isOk",isOk);//是否登陆成功
        if(isOk){
            infoMap.put("BaseUser",user);
        }
    } catch (DaoException e) {
        infoMap.put("isOk",isOk);
        throw new ServiceException("登录service error",e.getCause());
    }
    return infoMap;
}

     public BaseUser getUserInfo(String userName) throws DaoException {
    return userDao.getUserInfoByName(userName);
}

解决方案

http://ask.csdn.net/questions/11511

时间: 2024-09-12 16:41:37

spring-ssh声明式事物为什么不能绑定的相关文章

ssh声明式事物管理-SSH声明式事物管理不起作用为什么

问题描述 SSH声明式事物管理不起作用为什么 在线求教 各位前辈帮我看一下我的声明式事物管理那里出错了,为什么不起作用 com/transaction/pojo/Role.hbm.xml </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.

spring配置声明式事务遇到的问题 望高手解决!

问题描述 我在用spring配置声明式事务时用<tx:advice>里面没有属性自己往里加时有错误配置文件如下:<?xmlversion="1.0"encoding="UTF-8"?><!---Middletierapplicationcontextdefinitionfortheimagedatabase.--><beansxmlns="http://www.springframework.org/schema/

spring的声明式事务

关于事务配置的详解:Spring事务配置的五种方式 http://www.blogjava.net/robbie/archive/2009/04/05/264003.html 事务的传播特性 在我们用SSH开发项目的时候,我们一般都是将事务设置在Service层那么当我们调用Service层的一个方法的时候它能够保证我们的这个方法中执行的所有的对数据库的更新操作保持在一个事务中,在事务层里面调用的这些方法要么全部成功,要么全部失败.那么事务的传播特性也是从这里说起的.如果你在你的Service层

使用Spring为Hibernate配置声明式事物

            从AOP的角度看,事物跟日志一样,都是跟业务逻辑无关的东西,这两个东西通过切入方式,放到系统中,是非常合适的.下面,将Hibernate中的事物配置到Spring中,使我们在编程的时候,无需考虑事物的存在,专心的放到系统的逻辑实现上.         在Spring的配置文件中加入如下配置:          <!-- 配置sessionFactory --> <bean id="sessionFactory" class="org.

Spring的声明式事务管理

在service类前加上@Transactional,声明这个service所有方法需要事务管理.每一个业务方法开始时都会打开一个事务. Spring默认情况下会对运行期例外(RunTimeException)进行事务回滚.这个例外是unchecked 如果遇到checked意外就不回滚. 如何改变默认规则: 1 让checked例外也回滚:在整个方法前加上 @Transactional(rollbackFor=Exception.class) 2 让unchecked例外不回滚: @Trans

spring的声明式事务问题

问题描述 ①BaseServices 中有两个方法 updateName(),updateFlag()# DaoServices 中有个方法updateFlag()②UserServices 中有个方法,methodUserServices()[注解:Propagation.REQUIRES_NEW],调用如下methodUserServices(){ try{ updateName(); }catch(){ updateFlag(); }}两个方法操作的是同表.同记录,会导致一个问题,如果up

Spring源代码解析(六):Spring声明式事务处理

我们看看Spring中的事务处理的代码,使用Spring管理事务有声明式和编程式两种方 式,声明式事务处理通过AOP的实现把事物管理代码作为方面封装来横向插入到业务代码 中,使得事务管理代码和业务代码解藕.在这种方式我们结合IoC容器和Spirng已有的 FactoryBean来对事务管理进行属性配置,比如传播行为,隔离级别等.其中最简单的方 式就是通过配置TransactionProxyFactoryBean来实现声明式事物: 在整个源代码分析中,我们可以大致可以看到Spring实现声明式事物

spring声明式事务解析_java

一.spring声明式事务 1.1 spring的事务管理器 spring没有直接管理事务,而是将管理事务的责任委托给JTA或相应的持久性机制所提供的某个特定平台的事务实现.spring容器负责事物的操作,spring容器充当切面,事务的方法称为增强处理,生成的代理对象的方法就是目标方法+增强也就是crud+事务程序员只用做crud的操作,也就是目标方法和声明哪些方法应该在事务中运行. Spring提供了许多内置事务管理器实现: DataSourceTransactionManager:位于or

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

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