这是一段使用了动态form的一段代码
DynaActionForm dynForm = (DynaActionForm) form;
String name = (String) dynForm.get("username");
String pagesize = request.getParameter("pagesize");
//String pagesize = (String) dynForm.get("pagesize");
if (pagesize == null)
pagesize = "10";
如果我把pagesize作为一个dynForm的属性,代码变为
DynaActionForm dynForm = (DynaActionForm) form;
String name = (String) dynForm.get("username");
//String pagesize = request.getParameter("pagesize");
String pagesize = (String) dynForm.get("pagesize");
if (pagesize == null)
pagesize = "10";
这时if代码段不再执行,经过调试发现,pagesize这时等于""而不再等于null,这是为什么?!!!!
DynaActionForm dynForm = (DynaActionForm) form;
String name = (String) dynForm.get("username");
String pagesize = request.getParameter("pagesize");
//String pagesize = (String) dynForm.get("pagesize");
if (pagesize == null)
pagesize = "10";
如果我把pagesize作为一个dynForm的属性,代码变为
DynaActionForm dynForm = (DynaActionForm) form;
String name = (String) dynForm.get("username");
//String pagesize = request.getParameter("pagesize");
String pagesize = (String) dynForm.get("pagesize");
if (pagesize == null)
pagesize = "10";
这时if代码段不再执行,经过调试发现,pagesize这时等于""而不再等于null,这是为什么?!!!!
如果表单不存在pagesize时,request.getParameter("pagesize")==null。
当提交的form中有名为pagesize的控件时,String pagesize=""否则为null对象
...........
if( str == null ){
str="";
}
...........
if( str.equals("") ){
/* 在这里进行你的操作 */
}---------------
这样做的好处,不但可以是程序符合逻辑,
而且,也可以排除 NullPointException 异常。防止对空指针进行操作。