在编程中遇到此类问题,记下来与大家分享,希望能帮到某些也同样困惑的同学。
在MySQL中存储的空记录值,如下图第三条path属性的值为Null
上图中的path属性值在取出后有值的为E:\tem\upload\......,没有值的为Null。但是在应用程序中(path值赋给了程序中的picpath)监测它的值是否为空时:
开始使用的是
1:
if(picpath.equals(""))
{
req.setAttribute("isNull",1);
}
path是String 类型的,开始以为空值的时候是空字符串类型的;
2:
if(picpath==null)
{
req.setAttribute("isNull",1);
}
上面的比较方面失败了,就判断下它是不是null类型;
3:
if(picpath.lengh<1)
{
req.setAttribute("isNull",1);
System.out.println("picpath长度为零");
}
前两种方法都失败了,来测试看picpath的长度是否为零。结果发现picpath的长度不为零。
4:
if(picpath.equals("null"))
{
req.setAttribute("isNull",1);
}