iBatis 事务控制 与 两表操作将SQL语句写入单表

事务控制

示例:

    // move data from temp_table to work_tabletry {sqlMapClient.startTransaction();T03SlipWk orderForm = (T03SlipWk) session.get( "SLIP_WK" );moveOrderFormToWorkTable( orderForm.getSlipId() );moveProductsToWorkTable( orderForm.getSlipId() );deleteProductsInTempTable( orderForm.getSlipId() );deleteOrderFormInTempTable( orderForm.getSlipId() );sqlMapClient.commitTransaction();}catch( SQLException e){LOG.error( e );return ERROR;}finally{sqlMapClient.endTransaction();}// delete datas from T03 by slipIdvoid deleteOrderFormInTempTable( String slipId ) throws SQLException {assert slipId != null;T03SlipWkDAO dao = new T03SlipWkDAOImpl( sqlMapClient );T03SlipWkExample example = new T03SlipWkExample();T03SlipWkExample.Criteria criteria = example.createCriteria();criteria.andSlipIdEqualTo( slipId );dao.deleteByExample( example );}// delete datas from T04 by slipIdvoid deleteProductsInTempTable( String slipId ) throws SQLException {assert slipId != null;T04CaseDtlWkDAO dao = new T04CaseDtlWkDAOImpl( sqlMapClient );T04CaseDtlWkExample example = new T04CaseDtlWkExample();T04CaseDtlWkExample.Criteria criteria = example.createCriteria();criteria.andSlipIdEqualTo( slipId );dao.deleteByExample( example );}// Move datas from T04 to T06 by slipIdvoid moveProductsToWorkTable( String slipId ) throws SQLException {assert slipId != null;T06CaseDtlTrnDAO dao = new T06CaseDtlTrnDAOImpl( sqlMapClient );dao.insertFromT04( slipId );}// Move datas from T03 to T05 by slipIdvoid moveOrderFormToWorkTable( String slipId ) throws SQLException {assert slipId != null;T05SlipTrnDAO dao = new T05SlipTrnDAOImpl( sqlMapClient );dao.insertFromT03( slipId );//used for test transication//throw new SQLException("tttttttttttt");}

四条单独的SQL 语句操作:

moveOrderFormToWorkTable( orderForm.getSlipId() );
moveProductsToWorkTable( orderForm.getSlipId() );
deleteProductsInTempTable( orderForm.getSlipId() );
deleteOrderFormInTempTable( orderForm.getSlipId() );

要么都成功,要么都失败!实践证明,上面的事务控制成功

位置:BPP / jp.co.snjp.kddi.ht.action.CheckResultAction.checkComplete()


两表操作将SQL语句写入单表

如:moveOrderFormToWorkTable( orderForm.getSlipId() ) 就是 insert  into ... select ...

则只需要配置, insert  操作对应的表(t05_slip_trn_SqlMap.xml)。

  <!-- add by GongQiang,将数据从T03转到T05 --><insert id="insert_from_t03" parameterClass="java.lang.String" >INSERT INTO T05_SLIP_TRN(SLIP_ID,BARCODE,COMP_CD1,COMP_NM1,COMP_NM2,COMP_NM3,SHP_DATE1,SLIP_NUM1,SLIP_DTL_NUM1,PROD_CD1,PROD_NM1,LOT1,SHP_VOL1,FUNC_ID,USR_ID,USR_GRP,WK_REG_DATE,REG_DATE,UPDATE) SELECT SLIP_ID,BARCODE,COMP_CD1,COMP_NM1,COMP_NM2,COMP_NM3,SHP_DATE1,SLIP_NUM1,SLIP_DTL_NUM1,PROD_CD1,PROD_NM1,LOT1,SHP_VOL1,FUNC_ID,USR_ID,USR_GRP,REG_DATE,REG_DATE,UPDATE FROM T03_SLIP_WK WHERE SLIP_ID = #SLIP_ID:VARCHAR#</insert>
然后再对应的 dao (T05SlipTrnDAOImpl)中添加方法:

    // add by GongQiang,将数据从T03转到T05 public void insertFromT03( String slipId ) throws SQLException{sqlMapClient.insert("t05_slip_trn.insert_from_t03", slipId );}







本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/498011.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android studio 制作表格_红爆网络的旅游排行榜视频制作其实很简单,赶快动手尝试...

随着手机短视频的蓬勃发展&#xff0c;在网络上出现了多种类型的红极一时的爆款视频&#xff0c;这其中很具有代表性的一种就是排行榜视频&#xff0c;旅游领域的排行榜视频自然也少不了。这些个排行榜视频看起来挺高大上&#xff0c;配上稍有激情的背景音乐&#xff0c;播放起…

2017全球大数据产业八领域典型公司盘点分析

来源&#xff1a;黑科技数据 概要&#xff1a;从微观视角细分领域分析大数据行业。 今天带大家从微观视角细分领域分析大数据行业。 大数据分析 大数据可视化 BI商业智能分析 大数据检索 产品大数据分析 大数据预测、咨询 大数据服务支撑平台 机器学习技术 “大数据分析、可视化…

mysql profile 调试sql_SQL Server profile使用技巧

介绍经常会有人问profile工具该怎么使用&#xff1f;有没有方法获取性能差的sql的问题。自从转mysql我自己也差不多2年没有使用profile&#xff0c;忽然profile变得有点生疏不得不重新熟悉一下。这篇文章主要对profile工具做一个详细的介绍&#xff1b;包括工具的用途和使用方法…

BPP 相关——01

1、InputPageUtil 2、EditPageUtil ---------------------------------------------------------------------------------------------------------- 1、InputPageUtil 功能简述&#xff1a;在输入画面中&#xff0c;总是显示最后一页&#xff0c;本页输入满了则自动跳到下…

传感器数据完善 AI 功能,激起机器人“网络效应”

来源&#xff1a;36氪 概要&#xff1a;传感器数据将有助于推动AI的发展。 AI系统也同时扩展我们处理数据的能力&#xff0c;并帮助我们发现这些数据的创造性用途。 现在我们都对AI很熟悉了&#xff0c;也知道算法的完善离不开海量的数据。数据量越大&#xff0c;算法给出的结…

mariadb用户群体mysql_MySQL/MariaDB用户账户管理

UsernameHostnameUsername&#xff1a;任意的字符串组合&#xff0c;只能包含基本意义的字符&#xff1b;可以包含"_"、"."、"-"&#xff1b;Hostname&#xff1a;可以为FQDN(完全合格域名)&#xff0c;域名&#xff0c;IP地址&#xff0c;可使用…

iBatis 相关

1、配置iBatis 返回类型&#xff08;例如&#xff0c;sum( ) 一个BigDeciaml列后 &#xff09; <select id"abatorgenerated_totalWt2" resultClass"java.math.BigDecimal" parameterClass"java.lang.String">select sum(shp_wt2) from T0…

比AlphaGo Zero更强的AlphaZero来了!8小时解决一切棋类!

来源&#xff1a;本文作者PENG Bo&#xff08;http://t.cn/RY3MKSS&#xff09;&#xff0c;本文首发于作者的知乎专栏《技术备忘录》 读过AlphaGo Zero论文的同学&#xff0c;可能都惊讶于它的方法的简单。另一方面&#xff0c;深度神经网络&#xff0c;是否能适用于国际象棋这…

直接插入排序比较次数_程序员必须要会的直接插入排序算法

算法主要衡量标准时间复杂度(运行时间)在算法时间复杂度维度&#xff0c;我们主要对比较和交换的次数做对比&#xff0c;其他不交换元素的算法&#xff0c;主要会以访问数组的次数的维度做对比。其实有很多同学对于算法的时间复杂度有点模糊&#xff0c;分不清什么所谓的 O(n),…

脑机接口技术如何具体实现?

来源&#xff1a;神经科技前沿 概要&#xff1a;人类心灵能够与人工智能、机器人和其它心灵通过脑机接口技术(BCI)直接相连&#xff0c;从而超越人类寿命的限制吗? 就像古希腊人梦想在天空翱翔一样&#xff0c;今天的人们总是梦想着将大脑与机器融合来解决令人讨厌的死亡问题。…

BPP 相关——02

BPP项目 HT 部分完成小结&#xff1a; 1、Action 类怎么写&#xff1f; 现在的做法是Action 层直接与 dao 层耦合&#xff0c;所有的功能都在 Action 类中完成。 缺点&#xff1a;如果 Action1 与 Action2 两个类有部分功能重复&#xff0c;在“避免重复代码”这样的原则下&am…

scrapy读取mysql数据库_python3实战scrapy获取数据保存至MySQL数据库

python3使用scrapy获取数据然后保存至MySQL数据库&#xff0c;我上一篇写了如何爬取数据保存为csv文件&#xff0c;这一篇将会写如何将数据保存至数据库。思路大都一样&#xff0c;我列一个思路&#xff1a;1&#xff1a;获取腾讯招聘网。2&#xff1a;筛选信息获取我们想要的。…

共享单车技术含量,一篇文章全说透了!

来源&#xff1a;物联网智库 概要&#xff1a;共享单车已经成为了中国新四大发明之一&#xff0c;被输往了世界上很多城市。 共享单车已经成为了中国新四大发明之一&#xff0c;被输往了世界上很多城市。在我看来&#xff0c;虽然共享单车的实现并不复杂&#xff0c;其实质是一…

PostgreSQL 分页——示例

SQL 语句 select * from ( select * from logizard.t04_case_dtl_wk where slip_id order100~1~l001 order by case_id ) as T04 limit 5 offset 0 ;结果图

人工智能企业自动化的关键现状和战略影响

来源&#xff1a;腾股创投&#xff08;微信ID: tengguvc&#xff09; 人工智能和机器学习在亚马逊 Alexa 等面向消费者的应用领域取得了长足的进步&#xff0c;在企业内的的部署也不断涌现。 关于 AI 自动化对企业的影响范围和影响程度的意见不一。 一方面&#xff0c;牛津大学…

mysql 递归查询树型结构_MySQL递归查询所有子节点,树形结构查询

--表结构CREATE TABLE address (id int(11) NOT NULL AUTO_INCREMENT,code_value varchar(32) DEFAULT NULL COMMENT ‘区域编码‘,name varchar(128) DEFAULT NULL COMMENT ‘区域名称‘,remark varchar(128) DEFAULT NULL COMMENT ‘说明‘,pid varchar(32) DEFAULT NULL COM…

Mac 右键拷贝文件失效

问题&#xff1a;Mac 右键拷贝文件失效&#xff0c;有时候拷贝可以成功&#xff0c;有时候拷贝不成功 发现问题所在&#xff1a;开了百度翻译的划词&#xff0c; 解决&#xff1a;把划词关掉就好了&#xff0c;或者设置划词快捷键翻译就好了&#xff0c;反正就不要一划就翻译那…

资源官网

卓越亚马逊 Ant&#xff0c; http://ant.apache.org/ Axis2&#xff0c;http://axis.apache.org/axis2/java/core/ DisplayTag&#xff0c; http://www.displaytag.org/1.2/ Eclipse&#xff0c; http://www.eclipse.org/ Maven&#xff0c;http://maven.apache.org/ MyS…

为什么神经网络会把乌龟识别成步枪?现在的 AI 值得信任吗?

来源&#xff1a;36Kr 概要&#xff1a;人工智能的快速发展的确值得欣喜&#xff0c;但快速发展的背后还有各种不完善的地方。 人工智能的快速发展的确值得欣喜&#xff0c;但快速发展的背后还有各种不完善的地方。比如&#xff0c;前不久麻省理工学院的一些学生&#xff0c;利…

mysql 5.7 not null_mysql5.7基础 select...where...is not null 查找不为NULL的内容

礼悟&#xff1a;公恒学思合行悟&#xff0c;尊师重道存感恩。叶见寻根三返一&#xff0c;江河湖海同一体。虚怀若谷良心主&#xff0c;愿行无悔给最苦。读书锻炼养身心&#xff0c;诚劝且行且珍惜。数据、数据&#xff0c;命根就在数据。操作数据库一定要谨慎小心。给最苦 这里…