起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4419|回复: 5

[结贴] 平台事物未生效问题

[复制链接]

18

主题

50

帖子

156

积分

初级会员

Rank: 2

积分
156
QQ
发表于 2017-11-1 15:43:06 | 显示全部楼层 |阅读模式
版本: BeX5V3.5 小版本号:
数据库: 服务器操作系统: Linux 应用服务器: 其它(帖子中说明)
客户端操作系统: Windows 其它 浏览器: Chrome
在一个action 使用 KSQL.executeUpdate()  执行 多次insert操作, 其中一个失败,其他插入显示成功了。 事务没生效,这是什么情况

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2017-11-1 16:12:07 | 显示全部楼层
把完整的java代码发一下看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

18

主题

50

帖子

156

积分

初级会员

Rank: 2

积分
156
QQ
 楼主| 发表于 2017-11-1 16:21:41 | 显示全部楼层
jishuang 发表于 2017-11-1 16:12
把完整的java代码发一下看看
  1. public static String importExpertExcel(Object file,String fileName,String inFlag) throws Exception {       
  2.                 Map<String,Object> retMap = getExpertDataFromExcel((InputStream) file,fileName,inFlag);               
  3.                 String warnMsg = (String) retMap.get("WARN");                               
  4.                 List<Map<String,Object>> cnList = (List<Map<String, Object>>) retMap.get("CNLIST");
  5.                 List<Map<String,Object>> snList = (List<Map<String, Object>>) retMap.get("SNLIST");
  6.                        
  7.                 String insertExpertSql = "insert into t_rpt_expert t_rpt_expert(t_rpt_expert,t_rpt_expert.version,t_rpt_expert.cName,t_rpt_expert.eName,"
  8.                                         + "t_rpt_expert.sex,t_rpt_expert.birth,t_rpt_expert.nation,t_rpt_expert.poliStatus,t_rpt_expert.country,"
  9.                                         + "t_rpt_expert.duty,t_rpt_expert.title,t_rpt_expert.isAcadmin,t_rpt_expert.eduDegree,"                                       
  10.                                         + "t_rpt_expert.workUnit,t_rpt_expert.workPostAdd,t_rpt_expert.postCode,t_rpt_expert.officeTel,t_rpt_expert.fax,t_rpt_expert.mobile,t_rpt_expert.interMail,t_rpt_expert.miliMail,"                                       
  11.                                         + "t_rpt_expert.secretDegree,t_rpt_expert.certifiNum,t_rpt_expert.status,t_rpt_expert.belongDepart,"
  12.                                         + "t_rpt_expert.certifiType,t_rpt_expert.unitID,t_rpt_expert.unitName,t_rpt_expert.expertFrom,t_rpt_expert.createTime,t_rpt_expert.updateTime,t_rpt_expert.eduExp,"
  13.                                         + "t_rpt_expert.reviewFlag,t_rpt_expert.reviewStatus,t_rpt_expert.outIn,t_rpt_expert.outOrIn)"
  14.                                        
  15.                                         + "values(:expertId,:version,:name,:ename,:sex,:birthDate,:nation,:policeStatus,:country,"
  16.                                         + ":postName,:titleName,:isAcadmin,:acadName,"
  17.                                         + ":workUnitName,:commAddressName,:postCode,:unitPhoneNum,:faxNum,:phoneNum,:interMail,:miliMail,"               
  18.                                         + ":secretlevelName,:certifiNum,:status,:belongDepName,"
  19.                                         + ":certifiType,:unitID,:unitName,:expertFrom,:createTime,:updateTime,:eduExp,"
  20.                                         + ":reviewFlag,:reviewStatus,:outIn,:outOrIn)";
  21.                                                                                
  22.          try{       
  23.                 //// 有效数据专家插入到专家表中                     
  24.                         for(Map<String,Object> m:cnList){
  25.                                 KSQL.executeUpdate(insertExpertSql, m, "/expert/expertInfo/data", null);       
  26.                         }       
  27.                        
  28.                 //// 重复数据专家插入到专家临时表中,先根据操作用户清除临时表数据
  29.                         String insertExpertBakSql = null;
  30.                         if(!snList.isEmpty()){
  31.                                 insertExpertBakSql = insertExpertSql.replace("t_rpt_expert", "t_rpt_expert_bak");
  32.                                 deleteExpertBak();                       
  33.                                 for(Map<String,Object> m:snList){
  34.                                         KSQL.executeUpdate(insertExpertBakSql, m, "/expert/expertInfo/data", null);       
  35.                                 }
  36.                         }                       
  37.                                        
  38.                         if(StringUtils.isNotEmpty(warnMsg)){
  39.                                 return "existExpert";
  40.                                 //return "existExpert&" + warnMsg.substring(0, warnMsg.length()-1);
  41.                         }
  42.                         return "success";
  43.                 } catch (Exception e) {               
  44.                         e.printStackTrace();
  45.                         throw new Exception("导入信息保存失败!");
  46.                 }
  47.             
  48.         }
  49.        
复制代码
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2017-11-1 16:51:44 | 显示全部楼层
这样的应该不会,同一个请求中的是一个事务
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

18

主题

50

帖子

156

积分

初级会员

Rank: 2

积分
156
QQ
 楼主| 发表于 2017-11-1 17:04:01 | 显示全部楼层
jishuang 发表于 2017-11-1 16:51
这样的应该不会,同一个请求中的是一个事务

但是现在 确实出现这个现象了 excel导入数据 有的数据存到数据库了有的没存进去
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2017-11-1 17:42:18 | 显示全部楼层
把你的try catch去掉看看平台默认的有报错吗
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-19 20:39 , Processed in 0.074796 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表