iteye_11297 2011-01-12 11:04
浏览 181
已采纳

为什么我的代码执行时会走else里的logger

以下是我的程序代码 为什么我走的if (tbYibanwupin != null)还会执行else中的
logger.debug("error in " + className + "doInsert()添加的一般物品不能为空 \n");
并且
else中的
String message = "添加的一般物品不能为空";
messForm = successTabMessage.setMessageForm(0, message);
这两句话没有走

/**

  • 根据从dataBus取得的非空一般物品对象,调用dao的doInsert方法来完成数据的插入工作
  • 1.取出刑事案件的id及表名并将其存放于一般物品信息中的信息来源表名及信息来源id中
  • 2.插入一般物品表,然后将其表名及ID存放于物品汇总表及刑事案件中然后插入汇总表及更新案件
  • @param dataBus中的一般物品对象不能为空
  • @return 操作的结果消息及操作的对象
    */
    public DataBus doInsert(DataBus dataBus)
    {
    if (dataBus == null)
    return null;
    //声明对象
    XingShiAnJian xingShiAnJian = null;
    XingShiAnJian[] xingShiAnJians = null;

    WuPin wuPin = null;
    WuPin[] wuPins = null;
    TbYibanwupin tbYibanwupin = null; //一般物品
    TbWphzb wphzb = null; //物品汇总
    TbAjjbxx tbAjjbxx = null; //案件
    // XianYiRen[] xianYiRens=null;
    // XianYiRen xianYiRen=null;
    // TbXyr tbXyr=null;
    try
    {
    //取出dataBus中的对象
    int len = 0;
    if(dataBus.getPojos()!=null)
    {
    len = dataBus.getPojos().length;
    xingShiAnJians = new XingShiAnJian[len];
    xingShiAnJians = (XingShiAnJian[]) dataBus.getPojos();
    xingShiAnJian = xingShiAnJians[0];
    }
    dao = new DAOBaseObject();
    session = SessionControl.doGetSession(); //获得Session对象
    dao.doSetSession(session); //赋予DAO对象Session
    tm = new TransActionManager(session); //创建事务管理对象
    tm.beginTransaction();
    if (xingShiAnJian != null)
    {
    //从大对象中取出其属性
    int length = 0;
    tbAjjbxx = xingShiAnJian.getTbAjjbxx();
    if(xingShiAnJian.getWupins()!=null)
    {
    wuPins = new WuPin[xingShiAnJian.getWupins().length];
    wuPins = xingShiAnJian.getWupins();
    wuPin = wuPins[0];
    }
    if(wuPin!=null)
    {
    tbYibanwupin = wuPin.getYibanwupin();
    wphzb = wuPin.getWphzb();
    }
    }
    Long tbAjjbxxId = null;
    if(tbAjjbxx!=null)
    {
    tbAjjbxxId = tbAjjbxx.getAjjbxxid();
    }
    //如果接刑事案件基本信息不为空则插入案件,否则不允许办理
    if (tbAjjbxxId != null)
    {
    tbAjjbxx = (TbAjjbxx) dao.doGetPojo(tbAjjbxxId, tbAjjbxx.getClass());
    if (tbAjjbxx != null)
    {
    String bid = tbAjjbxx.getBid();
    if (bid == null || bid.equals(""))
    {
    String message = "案件编号为空,不能进行新增一般物品操作";
    messForm = successTabMessage.setMessageForm(0, message);
    returnDataBus.setMessageForm(messForm);
    returnDataBus.setPojos(null);
    return returnDataBus;
    }
    Long tbYibanwupinId = null;
    if (tbYibanwupin != null)
    {
    //插入一般物品
    tbYibanwupin.setXxlyajbm("AJJBXX"); //信息来源案件表名
    tbYibanwupin.setXxlyajid(tbAjjbxxId.toString()); //信息来源案件ID
    tbYibanwupin.setShanchubiaoji("0"); //将一般物品中的删除标记置为0表明为可删除
    tbYibanwupin.setJilushijian(Calendar.getInstance().getTime()); //设置记录时间
    tbYibanwupin.setDuxiekongzhi("w"); //将读写控制设为可写入
    dataMap = dao.doInsert(tbYibanwupin);
    tbYibanwupinId = tbYibanwupin.getYibanwupinid(); //取出一般物品ID

        if(wphzb==null) wphzb=new TbWphzb();
        wphzb.setShanchubiaoji("0");
        wphzb.setDuxiekongzhi("w");
        wphzb.setJingshishijian(Calendar.getInstance().getTime());
        //物品表名及ID
        wphzb.setWupinbiaoming("YIBANWUPIN");
        wphzb.setWpbmslbh(tbYibanwupinId.toString());
        //案件表明及ID
        wphzb.setXxlyajbm("AJJBXX"); //信息来源案件表名
         wphzb.setXxlyajid(tbAjjbxxId.toString()); //信息来源案件ID
        //信息来源业务表名
         wphzb.setXxlyywbm("AJJBXX");
        wphzb.setXxlyywid(tbAjjbxxId.toString());
        //物品名称
         wphzb.setWupinmingcheng(tbYibanwupin.getMingcheng());
        //物品类型
         wphzb.setWupinleixing("一般物品");
        //物品数量
         wphzb.setWupinshuliang(tbYibanwupin.getShuliang());
        //物品价值
         wphzb.setWupinjiazhi(tbYibanwupin.getJiazhi());
        dataMap = dao.doInsert(wphzb);
        Long wphzbId = wphzb.getWphzbid();
        //更新一般物品
         tbYibanwupin.setXxlyywbm("WPHZB");
        tbYibanwupin.setXxlyywid(wphzbId.toString());
        dataMap = dao.doUpdate(tbYibanwupin);
        tm.commit();
    

    /* //案件与物品相关联
    if(tbAjjbxx.getAjqtxxslbh()!=null&&!tbAjjbxx.getAjqtxxslbh().equals(""))
    {
    String ajqtxxslbh = tbAjjbxx.getAjqtxxslbh();
    ajqtxxslbh = ajqtxxslbh + "#" + wphzbId.toString();
    tbAjjbxx.setSaryxxslbh(ajqtxxslbh);
    }
    else
    {
    tbAjjbxx.setAjqtxxbm("WPHZB");
    tbAjjbxx.setAjqtxxslbh(wphzbId.toString());
    }
    dataMap = dao.doUpdate(tbAjjbxx);*/

        //封装为一个大对象
    
          xingShiAnJian = new XingShiAnJian();
        xingShiAnJians=new XingShiAnJian[1];
    
        xingShiAnJian.setJiebaojing(null);
        xingShiAnJian.setTbAjjbxx(tbAjjbxx);
        wuPin=new WuPin();
        wuPin.setYibanwupin(tbYibanwupin);
        wuPin.setWphzb(wphzb);
        //封装一般物品
          wuPins=new WuPin[1];
        wuPins[0]=wuPin;
        xingShiAnJian.setWupins(wuPins);
        xingShiAnJian.setXianyirens(null);
        xingShiAnJians[0] = xingShiAnJian;
        returnDataBus.setPojos(xingShiAnJians);
        messForm = successTabMessage.setMessageForm(dataMap);
      }
     else
     {
       String message = "添加的一般物品不能为空";
       messForm = successTabMessage.setMessageForm(0, message);
       logger.debug("error in " + className + "doInsert()添加的一般物品不能为空 \n");
     }
    

    }
    else
    {
    String message = "案件不存在,不能进行新增一般物品操作";
    messForm = successTabMessage.setMessageForm(0, message);
    logger.debug("error in " + className + "doInsert()刑事案件不能为空 ;\n");
    }
    }
    }
    catch(Exception ex)
    {
    tm.rollback();
    String message = "操作失败";
    int code = 0;
    messForm = successTabMessage.setMessageForm(code, message);
    }
    finally
    {
    SessionControl.doCloseSession();
    returnDataBus.setMessageForm(messForm);
    return returnDataBus;
    }
    }

为什么我走的if (tbYibanwupin != null)还会执行else中的
logger.debug("error in " + className + "doInsert()添加的一般物品不能为空 \n");
并且
else中的
String message = "添加的一般物品不能为空";
messForm = successTabMessage.setMessageForm(0, message);
这两句话没有走

是不是我的代码写的不规范,另请高手帮我规范一下代码的写法 谢谢了

  • 写回答

2条回答 默认 最新

  • iteye_2443 2011-01-12 12:12
    关注

    if(){}else{}
    只要没有出现既进了if 又进了else 就说明是你的条件问题了
    如果都进了,那就 大条了
    至于规范,完全可以看jdk源码的风格

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?
  • ¥15 关于#vue.js#的问题:修改用户信息功能图片无法回显,数据库中只存了一张图片(相关搜索:字符串)
  • ¥15 texstudio的问题,
  • ¥15 spaceclaim模型变灰色
  • ¥15 求一份华为esight平台V300R009C00SPC200这个型号的api接口文档
  • ¥15 字符串比较代码的漏洞
  • ¥15 欧拉系统opt目录空间使用100%
  • ¥15 ul做导航栏格式不对怎么改?