SpringMVC,Mybatis结合事务Transaction

5.SpringMVC,Mybatis结合事务Transaction
前面讲过,Spring事务就是针对某一个方法,在头和尾环绕上一对儿事务的开始和结束语句段,方法里针对数据库的操作就成为了一个事务。具体怎么样访问数据库,是JDBC,还是Spring JDBC还是Mybatis,Spring的事务并不关心。所以mybatis这里的事务的配置和实验和前面的Spring JDBC是一样的。
例 1.5
package com;
import java.io.IOException;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloWorldController {
    @Resource
    private ILoginService loginServic;
    @RequestMapping("/helloa")
    public void helloWorld(HttpServletResponse res) throws IOException {
        loginServic.login();
        res.sendRedirect("index.jsp");
    }
}
package com;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.mapper.RegisterMapper;
@Service
public class LoginServiceImpl implements ILoginService {
    @Resource
    private RegisterMapper registerMapper;
    public void login() {
        updateRegister();
        System.out.println("successfully update 1");
        insertRegisterWrong();//duplicate key
        System.out.println("successfully insert 2");
    }   
    public void updateRegister() {
        Register registerU = new Register();
        registerU.setId(52);
        registerU.setName("bbb2");
        registerU.setAge(80);
        System.out.println("registerMapper.updateByPrimaryKey 的返回值是 "+registerMapper.updateByPrimaryKey(registerU));
    }
    public void insertRegisterWrong() {
        Register register = new Register();
        register.setAge(80);
        register.setId(50);
        register.setName("aaa");
        registerMapper.insert(register);    }
}
更多请见:http://www.mark-to-win.com/tutorial/frame_Mybatis_SpringMVCMybatisTransaction.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值