博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring中编程式事务控制
阅读量:4965 次
发布时间:2019-06-12

本文共 2537 字,大约阅读时间需要 8 分钟。

step1:配置xml文件

1 
2
3
4
5 6
8
9
10
11
12 13
14

step2:自动注入TransactionTemplate对象

1 import org.springframework.transaction.support.TransactionTemplate;    2 @Autowired3 private TransactionTemplate transactionTemplate;

step3:使用execute方法对事务进行管理

1 transactionTemplate.execute(new TransactionCallbackWithoutResult() {2                 3                 @Override4                 protected void doInTransactionWithoutResult(TransactionStatus arg0) {5                     String s = userService.newUser(user,currentUserId);6                     User newUser=userService.getUser(user.getUsername());7                     roleService.createRoleUser(newUser.getUserId(), rolesId);8                 }9             });

完整流程如下:

1 package com.superb.mips.terminal.rest.controller; 2  3 import java.util.HashMap; 4  5 import org.apache.commons.lang3.StringUtils; 6 import org.springframework.beans.factory.annotation.Autowired; 7 import org.springframework.stereotype.Controller; 8 import org.springframework.transaction.TransactionStatus; 9 import org.springframework.transaction.annotation.Transactional;10 import org.springframework.transaction.support.TransactionCallbackWithoutResult;11 import org.springframework.transaction.support.TransactionTemplate;12 import org.springframework.web.bind.annotation.RequestMapping;13 import org.springframework.web.bind.annotation.ResponseBody;14 15 import com.superb.mips.system.domain.User;16 import com.superb.mips.system.service.inf.RoleService;17 import com.superb.mips.system.service.inf.UserService;18 19 20 @Controller21 @RequestMapping("api/users")22 public class RestUserController {23     @Autowired24     private UserService userService;25     &orgName=中国移动&orgId=126     @Autowired27     private RoleService roleService;28     @Autowired29     private TransactionTemplate transactionTemplate;30 31     @RequestMapping(value = "/createUsers.json")32     @ResponseBody33     @Transactional34     public HashMap
createUser(final User user,final int currentUserId,final String rolesId) {35 HashMap
map = new HashMap
();36 String[] strAry=rolesId.split(",");37 if(strAry.length==0){38 map.put("result", 1);39 map.put("description", "请绑定角色");40 return map;41 }else{42 for(int i=0;i

 

转载于:https://www.cnblogs.com/s-d-g/p/8630014.html

你可能感兴趣的文章
[置顶] 一名优秀的程序设计师是如何管理知识的?
查看>>
scanf和gets
查看>>
highcharts 图表实例
查看>>
ubuntu下如何查看用户登录及系统授权相关信息
查看>>
秋季学期学习总结
查看>>
SpringBoot 优化内嵌的Tomcat
查看>>
【LaTeX】E喵的LaTeX新手入门教程(1)准备篇
查看>>
highcharts曲线图
查看>>
extjs动态改变样式
查看>>
PL/SQL Developer 查询的数据有乱码或者where 字段名=字段值 查不出来数据
查看>>
宏定义
查看>>
笔记:git基本操作
查看>>
生成php所需要的APNS Service pem证书的步骤
查看>>
JavaWeb之JSON
查看>>
HOT SUMMER 每天都是不一样,积极的去感受生活 C#关闭IE相应的窗口 .
查看>>
windows平台上编译mongdb-cxx-driver
查看>>
optionMenu-普通菜单使用
查看>>
MVC3分页传2参
查看>>
2016-2017-2点集拓扑作业[本科生上课时]讲解视频
查看>>
appium(13)- server config
查看>>