荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: georgehill (George Hill), 信区: Java
标  题: [转载] JSP语法(12)(转寄)
发信站: BBS 荔园晨风站 (Sat Jan 27 22:48:48 2001), 站内信件

【 以下文字转载自 georgehill 的信箱 】
【 原文由 George.bbs@bbs.fzu.edu.cn 所发表 】
发信人: yzy0 (帝龙腾), 信区: Program
标  题: JSP语法(12)
发信站: 福州大学庭芳苑BBS (Fri Jan  5 01:40:23 2001) , 转信

<jsp:setProperty>
设置Bean中的属性值.

JSP语法
<jsp:setProperty
name="beanInstanceName"
{
property= "*" /
property="propertyName" [ param="parameterName" ] /
property="propertyName" value="{string / <%= expression %>}"
}
/>
例子
<jsp:setProperty name="mybean" property="*" />
<jsp:setProperty name="mybean" property="username" />
<jsp:setProperty name="mybean" property="username" value="Steve" />
描述
<jsp:setProperty>元素使用Bean给定的setter方法,在Bean中设置一个或多个属
性值。你在使用这个元素之前必须得使用<jsp:useBean>声明此Bean.因为,<jsp:
useBean>和<jsp:setProperty>是联系在一起的,同时这他们使用的Bean实例的名
字也应当相匹配(就是说,在<jsp:setProperty>中的name的值应当和<jsp:
useBean>中id的值相同)

你能使用多种方法利用<jsp:setProperty>来设定属性值 :

通过用户输入的所有值(被做为参数储存中request对象中)来匹配Bean中的属性
通过用户输入的指定的值来匹配Bean中指定的属性
在运行时使用一个表达式来匹配Bean的属性
每一种设定属性值的方法都有其特定的语法,下面我们会来讲解

属性及其用法
name="beanInstanceName"
表示已经在<jsp:useBean>中创建的Bean实例的名字.

property="*"
储存用户在Jsp输入的所有值,用于匹配Bean中的属性。在Bean中的属性的名字必
须和request对象中的参数名一致.

从客户传到服器上的参数值一般都是字符类型 ,这些字符串为了能够在Bean中匹
配就必须转换成其它的类型,下面的表中列出了Bean属性的类型以及他们的转换方
法.

把字符串转化为其它类型的方法. Property 类型
方法


boolean or Boolean


java.lang.Boolean.valueOf(String)



byte or Byte


java.lang.Byte.valueOf(String)



char or Character


java.lang.Character.valueOf(String)



double or Double


java.lang.Double.valueOf(String)



integer or Integer


java.lang.Integer.valueOf(String)



float or Float


java.lang.Float.valueOf(String)



long or Long


java.lang.Long.valueOf(String)



如果request对象的参数值中有空值,那么对应的Bean属性将不会设定任何值。同
样的,如果Bean中有一个属性没有与之对应的Request参数值,那么这个属性同样
也不会设定.

property="propertyName" [ param="parameterName" ]
使用request中的一个参数值来指定Bean中的一个属性值。在这个语法中,
property指定Bean的属性名,param指定request中的参数名.

如果bean属性和request参数的名字不同,那么你就必须得指定property和param
,如果他们同名,那么你就只需要指明property就行了.

如查参数值为空(或未初始化),对应的Bean属性不被设定.

property="propertyName" value="{string / <%= expression %>}"
使用指定的值来设定Bean属性。这个值可以是字符串,也可以是表达式。如果这个
字符串,那么它就会被转换成Bean属性的类型(查看上面的表).如果它是一个表达
式,那么它类型就必须和它将要设定的属性值的类型一致。

如果参数值为空,那么对应的属性值也不会被设定。另外,你不能在一个<jsp:
setProperty>中同时使用param和value

技巧
如果你使用了property="*",那么Bean的属性没有必要按Html表单中的顺序排序


--
※发信站 [福州大学庭芳苑BBS bbs.fzu.edu.cn] · FROM [210.34.50.252]
--
※ 转载:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 202.96.151.222]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店