@Transactional注解在ssm上面使用的方法

ssm框架配置文件

ssm分为三层: 

DispatcherServlet中央调度处理器和他的配置文件mvc界面层

spring管理的service和dao层

最后就是mybtis的持久层

首先使用@Transactional的先决条件是

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <!--因为事务必须关联数据库处理,所以要配置数据源-->
        <property name="dataSource" ref="dataSource"></property>
    </bean>

    <!--2.添加事务的注解驱动-->
    <tx:annotation-driven transaction-manager="transactionManager"></tx:annotation-driven>

 配置数据源和注解驱动

然后直接在类或者方法上加上注解就行(这里不讲注解的参数使用)

@RequestMapping("/some.do")
    @Transactional(propagation = Propagation.REQUIRED)
    public ModelAndView add(Student student){
        ModelAndView m=new ModelAndView();
        int i = studentService.addStudent(student);
        if (i>0){
            m.addObject("data","插入成功");
            m.setViewName("result");
            System.out.println(1/0);
        }else {
            m.setViewName("result");
        }
        return m;
    }

必须是要public公有方法才行,在类上添加表明整个类的public都使用

@Transactional使用在controller和service层

首先要明白有好几个配置文件,spring的配置文件里配置就只能写在它管理的service层里面

如果需要写在controller层,就必须要写在中央调度管理器的配置文件中。但是这个时候会有一个驱动的冲突(不知如何解决) 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值