知道错误在那里了!!
后来经朋友的帮忙,才发现是我把设置setProperty标签属性值的三种语法格式搞混淆了!书上有啊,我都没有看仔细,哎!!!
下面缉拿但说下设置setProperty标签属性值的三种语法格式
设置setProerty标签属性的三种语法格式比较
1.通过表达式或字符串设置
<jsp:setProperty name="beanName" Property="PropertyName" value="<%=exprossion%>|字符串" />
注意:value的值就是传到JavaBean里面的值了,相当于直接给对应的JavaBean中的属性“赋值”。另
外若是<%=exprossion%>的话,还是可以接受表单中提交的值的。
2.通过HTTP表单的参数值设置
<jsp:setProperty name="beanName" property="*" />
注意:这里用*,表示不再具体指定JavaBean属性的值将对应表单中的哪个参数,系统会自动根据和名
字进行匹配,但呀十分注意的是,表单中参数的名字必须和JavaBean中的属性名字完全相同。
这样做的好处显而易见,当表单中要提交的参数过多时,可以简化代码。
另外,不要*的话,可以用<jsp:setProperty name="beanName" property="PropertyName"
param="paramName" />
3.通过内置对象request提取的参数设置
<jsp:setProperty name="beanName" property="PropertyName" param="paramName" />
注意:这样做的缺点是,增添了很多冗余的代码。既要用request.getParameter("PropertyName")提取
表单中的参数,又要一个一个的setProperty。
建议表达中参数过多时,采用第二种方法设置setProerty属性的值!!