11.22周总结

这一周中通过充实的学习,查阅资料,看书等学到了很多

使用<jsp:setProperty>
<jsp:setProperty>标签用于对 JavaBean 的属性赋值,可以对某个 JavaBean 的某个属性赋
值,也可以对 JavaBean 的所有属性赋值。它与直接调用 setUsername 和 setUserpass 的作用
是相同的。
<jsp:setProperty>标签的基本格式如下:
<jsp:setProperty name="JavaBean 的名字" property="属性的名字"
[value="值"] [param="表单元素名字"]/>
要为某个 JavaBean 的某个属性赋值,需要知道为哪个 JavaBean 的哪个属性赋值,以及
赋什么样的值。name 属性指出要对哪个 JavaBean 赋值,该 JavaBean 应该是已经存在的
JavaBean。property 属性指出要为 JavaBean 的哪个属性赋值,应该是 JavaBean 的某个属性
的名字。value 或者 param 指出要赋什么样的值,value 直接指出值,param 指出使用用户的
表单请求数据中表单元素的名字。
要为前面声明的 JavaBean 对象 user 的 username 属性赋值 lixucheng,可以使用下面的
代码:
<jsp:setProperty name="user" property="username" value="lixucheng"/>
value 的值可以使用表达式语言,这样就可以使用前面定义好的信息。假设在 request
中已经存在保存用户名的 username 变量,可以写成下面的样子:
<jsp:setProperty name="user" property="username" value="${username}"/>
如果这个值是来自请求信息中的表单元素 username,则可以写成下面的样子:
<jsp:setProperty name="user" property="username" value="${param.username}"/>
如果要赋的值来源于请求表单元素,还可以写成下面的样子:
<jsp:setProperty name="user" property="username" param="username"/>
如果表单元素的名字和要赋值的属性的名字相同,则可以省略 param 属性(效果是相
同的):
<jsp:setProperty name="user" property="username"/>
也就是说,如果没有给定值,系统会查看请求表单元素,看有没有与当前要赋值的属
性的名字相同的,如果有,则获取这个表单元素的值,然后给 JavaBean 的属性赋值。

要想为 JavaBean 的 userpass 属性赋值,可以使用下面的代码:
<jsp:setProperty name="user" property="userpass"/>
这时候分别从表单元素中取出用户名和口令,然后分别对 Java 的属性 username 和
userpass 进行赋值。在这样的情况下,两个赋值语句可以写在一起,如下所示:
<jsp:setProperty name="user" property="*"/>
该语句表示为 user 对象的所有属性赋值。
综上所述,<jsp:setProperty>标签存在以下 4 种形式:
● <jsp:setProperty name="JavaBean 的名字" property="属性的名字" value="值"/>
● <jsp:setProperty name="JavaBean 的名字" property="属性的名字"
param="表单元素名字"/>
● <jsp:setProperty name="JavaBean 的名字" property="属性的名字"/>
● <jsp:setProperty name="JavaBean 的名字" property="*"/>

原文地址:https://www.cnblogs.com/dty602511/p/14170098.html