spring+ibatis框架下事务代码的编写示例
来源:互联网 发布:unity3d开发安卓游戏 编辑:程序博客网 时间:2024/05/17 14:29
最近在做项目的账号管理这一块儿的功能。每一项账号操作相关的功能,都要涉及到多张表的读写。这个时候自然联想到用数据库的事务进行操作。否则,一处发生异常,将导致脏数据的产生。
ibatis+spring框架下事务的代码写法有两种方式:注解方式和声明事务起始点。
需要的spring的配置文件如下:
<bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource"></property></bean><tx:annotation-driven transaction-manager="transactionManager" /> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" > <property name="driverClassName" value="${jdbc.driver}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> <property name="maxActive" value="${jdbc.maxActive}"/> </bean>一.注解方式:
在类或方法上面加@Transactional(isolation = Isolation.SERIALIZABLE),序列化这个级别在事务隔离级别里面是最高的。考虑到账号操作比较重要,就选了这个级别。
二.java代码声明事务起始点
@Overridepublic boolean deleteAdminGroup(Integer id) {DefaultTransactionDefinition definition = new DefaultTransactionDefinition();definition.setIsolationLevel(DefaultTransactionDefinition.ISOLATION_SERIALIZABLE);TransactionStatus status = transactionManager.getTransaction(definition);//事务开始List<JdOrg> childGroupList = new ArrayList<JdOrg>();try {......transactionManager.commit(status);//提交事务} catch (Exception e) {LOG.error(e.getMessage(), e);transactionManager.rollback(status);//事务回滚return false;}return true;}个人比较偏好第一种,开发效率高,配置简洁。
0 0
- spring+ibatis框架下事务代码的编写示例
- Spring框架下基于事务的单元测试
- spring框架整合ibatis的项目实例代码
- spring框架整合ibatis的项目实例代码
- spring框架整合ibatis的项目实例代码
- spring框架整合ibatis的项目实例代码
- spring框架整合ibatis的项目实例代码
- spring 的事务控制 (spring + Ibatis)
- Spring事务配置的五种方式及示例代码
- Spring框架下,ibatis连接SqlServe…
- spring+ibatis事务配置
- spring ibatis 配置事务
- spring+ibatis事务配置
- spring+ibatis事务配置
- Spring管理iBatis事务
- Spring管理iBatis事务
- spring+ibatis事务配置
- 使用Spring框架下的完成对事务的操作
- 167 - The Sultan's Successors(八皇后问题(回溯))
- 如何快速取得一个二进制状态的所有子状态
- forward与redirect的区别
- XCode5添加新建类模板(Cocos2dx Template Class for Scene or Layer)
- ubuntu 12.04 进不了图形界面的修复
- spring+ibatis框架下事务代码的编写示例
- HDU 1317 XYZZY Bellman-Ford求最长路 判断正环
- C语言格式输出函数printf()详解
- Android开发学习笔记4--安卓程序安装与启动过程剖析
- PHP 5.3.6及以前版本的PDO的bindParam,bindValue潜在的安全隐患
- Day12 - usermod 修改用户帐号
- 怎样清空输入缓冲区里的内容
- LA6142 Probability Through Experiments 统计圆上的锐角三角形
- Android开发学习笔记6--安卓程序调试方法