📄 13.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0042)http://www.aspcn.com/showarticle.asp?id=89 -->
<HTML><HEAD><TITLE>jsp</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META content="MSHTML 5.00.2920.0" name=GENERATOR><LINK
href="13.files/aspcn.css" rel=stylesheet type=text/css></HEAD>
<BODY>
<table border=0 width="100%">
<tbody>
<tr>
<td>13<br>
<h2 align=center><jsp:setProperty></h2>
<p>设置Bean中的属性值. </p>
<a name=9318></a>
<h4>JSP语法</h4>
<blockquote><jsp:setProperty <br>
name="<em>beanInstanceName</em>" <br>
{ <br>
property= "*" | <br>
property="<em>propertyName</em>"
[ param="<em>parameterName</em>" ] | <br>
property="<em>propertyName</em>"
value="{<em>string</em> | <%= <em>expression</em> %>}" <br>
} <br>
/> </blockquote>
<a
name=16463></a>
<h4>例子</h4>
<blockquote><jsp:setProperty name="mybean" property="*" /> <br>
<jsp:setProperty name="mybean" property="username" /> <br>
<jsp:setProperty name="mybean" property="username" value="Steve" />
</blockquote>
<a name=17957></a>
<h4>描述</h4>
<p><jsp:setProperty>元素使用Bean给定的setter方法,在Bean中设置一个或多个属性值。你在使用这个元素之前必须得使用<jsp:useBean>声明此Bean.因为,<jsp:useBean>和<jsp:setProperty>是联系在一起的,同时这他们使用的Bean实例的名字也应当相匹配(就是说,在<jsp:setProperty>中的name的值应当和<jsp:useBean>中id的值相同)
</p>
<p>你能使用多种方法利用<jsp:setProperty>来设定属性值 : </p>
<ul>
<a name=11925></a>
<li>通过用户输入的所有值(被做为参数储存中request对象中)来匹配Bean中的属性
<li>通过用户输入的指定的值来匹配Bean中指定的属性
<li>在运行时使用一个表达式来匹配Bean的属性 </li>
</ul>
<p>每一种设定属性值的方法都有其特定的语法,下面我们会来讲解 </p>
<a name=18217></a>
<h4>属性及其用法</h4>
<ul>
<a name=17612></a>
<li>name="<em>beanInstanceName</em>"
<p>表示已经在<jsp:useBean>中创建的Bean实例的名字. </p>
<a
name=9918></a>
<li>property="*"
<p>储存用户在Jsp输入的所有值,用于匹配Bean中的属性。在Bean中的属性的名字必须和request对象中的参数名一致. </p>
<p>从客户传到服器上的参数值一般都是字符类型 ,这些字符串为了能够在Bean中匹配就必须转换成其它的类型,下面的表中列出了Bean属性的类型以及他们的转换方法.
<p><b>把字符串转化为其它类型的方法.</b>
<table border=3>
<caption></caption>
<tbody>
<tr>
<th>
<p>Property 类型 </p>
</th>
<th>方法</th>
</tr>
<tr>
<td><br>
<p> boolean or Boolean </p>
</td>
<td><br>
<p> java.lang.Boolean.valueOf(String) </p>
</td>
</tr>
<tr>
<td><br>
<p>byte or Byte </p>
</td>
<td><br>
<p> java.lang.Byte.valueOf(String) </p>
</td>
</tr>
<tr>
<td><br>
<p> char or Character </p>
</td>
<td><br>
<p> java.lang.Character.valueOf(String) </p>
</td>
</tr>
<tr>
<td><br>
<p> double or Double </p>
</td>
<td><br>
<p> java.lang.Double.valueOf(String) </p>
</td>
</tr>
<tr>
<td><br>
<p> integer or Integer </p>
</td>
<td><br>
<p> java.lang.Integer.valueOf(String) </p>
</td>
</tr>
<tr>
<td><br>
<p> float or Float </p>
</td>
<td><br>
<p> java.lang.Float.valueOf(String) </p>
</td>
</tr>
<tr>
<td><br>
<p> long or Long </p>
</td>
<td><br>
<p> java.lang.Long.valueOf(String) </p>
</td>
</tr>
</tbody>
</table>
<p>如果request对象的参数值中有空值,那么对应的Bean属性将不会设定任何值。同样的,如果Bean中有一个属性没有与之对应的Request参数值,那么这个属性同样也不会设定.
</p>
<a name=9919></a>
<li>property="<em>propertyName</em>" [ param="<em>parameterName</em>"
]
<p>使用request中的一个参数值来指定Bean中的一个属性值。在这个语法中,property指定Bean的属性名,param指定request中的参数名.
</p>
<p>如果bean属性和request参数的名字不同,那么你就必须得指定property和param ,如果他们同名,那么你就只需要指明property就行了.
</p>
<p>如查参数值为空(或未初始化),对应的Bean属性不被设定. </p>
<a name=9920></a>
<li>property="<em>propertyName</em>" value="{<em>string</em> | <%=
<em>expression</em> %>}"
<p>使用指定的值来设定Bean属性。这个值可以是字符串,也可以是表达式。如果这个字符串,那么它就会被转换成Bean属性的类型(查看上面的表).如果它是一个表达式,那么它类型就必须和它将要设定的属性值的类型一致。
</p>
<p>如果参数值为空,那么对应的属性值也不会被设定。另外,你不能在一个<jsp:setProperty>中同时使用param和value
</p>
</li>
</ul>
<h4>技巧</h4>
<ul>
<a name=19199></a>
<li>如果你使用了property="*",那么Bean的属性没有必要按Html表单中的顺序排序 </li>
</ul>
</td>
</tr>
<tr>
<td>所有文章来自<font color=red>http://www.aspcn.com ASP中华网</font>如要转载请注明出处,谢谢</td>
</tr>
</tbody>
</table>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -