锁定老帖子 主题:问一个简单的问题
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2006-11-29
name == null || name.length() < 1 (Name为表单数据) 使用name == null 不就已经判断是否输入数据 为何还要使用 name.length() < 1 进行判断 本来以为后者是用来区别输入空格 但后来发现不是这样 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-11-29
""
|
|
返回顶楼 | |
发表时间:2006-11-29
""是这个....不是" "
基本知识... |
|
返回顶楼 | |
发表时间:2006-11-29
不很明白
详细点好吗? |
|
返回顶楼 | |
发表时间:2006-11-29
空格length为1 " "
空字串length为0 "" |
|
返回顶楼 | |
发表时间:2006-11-29
"" 与 " " 和 表达式有什么关系?
name == null 是为了防止不输入数据 name.length() 又是为了什么呢? |
|
返回顶楼 | |
发表时间:2006-11-29
天寒地冻 揭帖睡觉
|
|
返回顶楼 | |
发表时间:2006-11-29
去问问你老师吧....我...说不清了...
如果有input 框到后台得到的就是"" 如果没有input 框到后台得到的就是null |
|
返回顶楼 | |
发表时间:2006-11-29
我真怪笨来
|
|
返回顶楼 | |
发表时间:2006-12-06
wangzicool 写道 在FormBean里验证数据
name == null || name.length() < 1 (Name为表单数据) 使用name == null 不就已经判断是否输入数据 为何还要使用 name.length() < 1 进行判断 本来以为后者是用来区别输入空格 但后来发现不是这样 jsp <html:form name="myTestForm" action="myTest.do> <html:text property="name1" /> <input type="text" name="name2" /> <html:submit property="submit" value="提交" /> </html:form> 对于name1如果在myTestForm不存在,则会报错,该页面显示不出来。 这种情况下name1==null没有必要,当你什么都不填,提交时name.length()<1就会起作用,因为 "".length=0; 对于name2,如果myTestForm中有,能够被提交到form,如果没有也不会报错。 name2==null此时也不会有实际作用。 即在上面的情况下,name不会为null,这两种写法的区别在于name1能够把myTestForm中初始化的值显示出来,而name2不行。 MyTestForm { private String name1="name1"; private String name2="name2"; //get //set } 如果name2是必须的,即myTestForm中一定要接收name2,但你把name2写掉了。成了这样 jsp <html:form name="myTestForm" action="myTest.do> <html:text property="name1" /> <html:submit property="submit" value="提交" /> </html:form> 这样页面在初始化的时候不报错, 但因为你在验证时写了 name2 == null || name2.length() < 1 这时就会出现验证不通过,此时,如果form reset被调用,并且name2没有初始化成一个给定的值,则name2的值为null 这时,如果没有name2==null,则name2.length()会出现NullPointerException。 综上述,如果你能保证需要验证的项在jsp页面中一定会出现。 则可以只写name2.length() < 1 |
|
返回顶楼 | |