zoukankan      html  css  js  c++  java
  • hibernate保存数据和调用存储过程数据事务不同步的问题

    保存数据:

      AaaTest aaaTest = new AaaTest();
      aaaTest.setId(id);
      aaaTest.setName(name);
      aaaTest.setAddress(address);
      this.baseDao.save(aaaTest);

     QueryHelper helper = new QueryHelper();
      helper.append(" from AaaTest");
      List<AaaTest> l = (List<AaaTest>) baseDao.getList(helper);  

    调用存储过程:

      //调存储过程
      Connection conn = null;
      CallableStatement cs = null;
      ResultSet rs = null;
      try {
       conn = baseDao.getCurrentSession().connection();
       cs = conn.prepareCall("{ call P_AAA_TEST(?,?,?) }");
       cs.setInt(1, 1);
       cs.registerOutParameter(2, Types.INTEGER);
       cs.registerOutParameter(3, OracleTypes.CURSOR);
       cs.execute();
       
       int flag = cs.getInt(2);//返回的int
       rs = (ResultSet) cs.getObject(3);  
       List<Map<String, Object>> list =CommonUtil.convertList(rs);  //本地记录不存在,主机存在的对账记录
       System.err.println("条数"+list.size());
       for (Map<String, Object> map : list) {
        System.err.println(map.get("name"));   
       }
       
      }catch(Exception e){
       e.printStackTrace();
      }

    发现一个问题,刚刚save的数据用存储过程查不出来,在保存数据和调用存储过程之间,加入查询代码(红色),居然可以了,为什么呢?

  • 相关阅读:
    点击弹出层以外的区域隐藏弹出层
    css3 animation 动画属性简介
    IdentityServer4 接入自己的用户体系
    分布式事务的实现
    微服务分布式数据管理的挑战
    微服务的数据自治
    SkyWalking 分布式追踪系统
    创建、改进和控制微服务API的版本和契约
    富领域模型和贫血领域模型
    cenos 安装git
  • 原文地址:https://www.cnblogs.com/yangy608/p/2683529.html
Copyright © 2011-2022 走看看