以下是我的程序代码 为什么我走的if (tbYibanwupin != null)还会执行else中的
logger.debug("error in " + className + "doInsert()添加的一般物品不能为空 \n");
并且
else中的
String message = "添加的一般物品不能为空";
messForm = successTabMessage.setMessageForm(0, message);
这两句话没有走
/**
@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);
这两句话没有走
是不是我的代码写的不规范,另请高手帮我规范一下代码的写法 谢谢了
if(){}else{}
只要没有出现既进了if 又进了else 就说明是你的条件问题了
如果都进了,那就 大条了
至于规范,完全可以看jdk源码的风格
设置下断点,debug看下就知道了