首页新闻找找看学习计划

菜鸟问题多!!

0
悬赏园豆:50 [待解决问题]

今天老大叫我写一个查询框,只传一个数据到后台要查3个类型的数据

分别是:代理商名称;商户名称;商户编号。我把它命名为 mchtInf;

String mchtInf=(String)map.get("mchtInf");
System.out.println(mchtInf);
if(mchtInf!=null && mchtInf!=""){
map.put("mchtId", mchtInf);
list=mmsTradePosDetailDao.findPosTrade(map);
if(list.isEmpty() && list.size() == 0){
map.put("mchtId", "");
map.put("mchtName",mchtInf );
list= mmsTradePosDetailDao.findPosTrade(map);
if(list.isEmpty() && list.size() == 0){
map.put("mchtId", "");
map.put("mchtName", "");
map.put("ageLev1Name", mchtInf);
list= mmsTradePosDetailDao.findPosTrade(map);

}
}
}else{
list=mmsTradePosDetailDao.findPosTrade(map);
};这是我的判断代码

<if test="mchtId !=null and mchtId !='' ">
and <![CDATA[ t.MCHT_ID = #{mchtId,jdbcType=VARCHAR}]]>
</if>
<if test="mchtName !=null and mchtName !='' ">
and <![CDATA[ m.MCHT_NAME = #{mchtName,jdbcType=VARCHAR}]]>
</if>
<if test="ageLev1Name !=null and ageLev1Name !='' ">
and <![CDATA[ age.AGE_LEV1_NAME = #{ageLev1Name,jdbcType=VARCHAR}]]>
</if>这是我的Mapper条件

System.out.println(list.get(0).getMchtName()+"____________________________________");
return new PageBean<MmsTradePosDetail>(list);我的serviceImpl最后

一直到把list 放到返回函数前都是有数据的。

可是到contorller就是空的;求解大神

scccc的主页 scccc | 初学一级 | 园豆:154
提问于:2017-09-08 16:54
< >
分享
所有回答(3)
0

null值问题,最好自己打断点跟踪就好了,像你这种代码贴出来,也看不出来啥东东。

让我发会呆 | 园豆:2629 (老鸟四级) | 2017-09-08 17:21

如果传进去的值符合第一个判断 他会成功返回数据 如果是其他2个值 只会返回null

支持(0) 反对(0) scccc | 园豆:154 (初学一级) | 2017-09-08 17:24

@scccc: 那你就跟踪返回null的那种情况
这种null值问题,你先看数据库返回的是不是null,如果是那就可能是你sql写的有问题,如果不为空,那就再往后跟踪,像你贴的这sql,我们怎么能知道你字段值写的对不对,表名写的对不对之类的,你说是吧

支持(0) 反对(0) 让我发会呆 | 园豆:2629 (老鸟四级) | 2017-09-08 17:31
0

null值问题,最好自己打断点跟踪就好了,像你这种代码贴出来,也看不出来啥东东。

鸿燕藏锋 | 园豆:568 (小虾三级) | 2017-09-08 20:55
0

你在每个返回null的地方都alert一下,看看到底哪一个判断出的问题

姚刘乐 | 园豆:70 (初学一级) | 2017-09-11 13:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册