admin管理员组文章数量:1609688
jsp:setProperty用来设置已经实例化的Bean对象的属性
第一种形式:
<jps:setProperty name = “JavaBean实例名” property = “*”/>
该形式是设置Bean 属性的快捷方式.在Bean 中属性的名字,类型必须和request对象中的参数名称相匹配。由于表单中传过来的数据类型都是String 类型的,Jsp内在机制会把这些参数转化成Bean属性对应的类型。
property = "*"表示所有名字和Bean属性名字匹配的请求参数都将被传递给相应的属性set方法。
第二种形式:
<jsp:setProperty name = “JavaBean实例名” property = “JavaBean属性名” />
使 用request对象中的一个参数值来指定Bean中的一个属性值。在这个语法中,property指定Bean 的属性名,而且Bean 属性和 request参数的名字应相同。也就是说,如果在Bean 中有setUserName(String userName)方法,那 么,propertyName的值就是"userName".这种形式灵活性较强,可以有选择的对Bean中的属性赋值
第三种形式:
<jsp:setProperty name = “JavaBean实例名” property = “JavaBean属性名” value = “BeanValue”/>
value 用来指定Bean属性的值。字符串数据会在目标类中通过标准的valueOf方法自动转换成数字、boolean、Boolean、byte、Byte、 char、Character。例如,boolean和Boolean类型的属性值(比如“true”)通过Boolean.valueOf转换,int 和Integer类型的属性值(比如“42”)通过Integer.valueOf转换。
注意:value和param属性不能同时使用,但可以使用其中任意一个。
value是自定义属性的值,param是将请求参数(比如前端表单数据) 作为值 注入到该property中。
另外,param的值应该对应前端 请求参数的name属性名,表明哪个请求参数将注入到该property中。
第四种形式:
<jsp:setProperty name = “JavaBean实例名”
property = "propertyName" param = "request对象中的参数名"
/>
param指定用哪个请求参数作为Bean属性的值。Bean 属性和request参数的名字可以不同。如果当前请求没有参数,则什么事情也不做,系统不会把null传递给Bean属性的set方法。因此,你可以让Bean自己提供默认属性值,只有当请求参数明确指定了新值时才修改默认属性值。
例如,下面的代码片断表示:如果存在numItems请求参数的话,把numberOfItems属性的值设置为请求参数numItems的值;否则什么也不做。
<jsp:setProperty name=“orderBean” property=“numberOfItems” param=“numItems” />
下面是一个简单的例子:
//sampleBean.java
package MyJavaBeanPackage;
public class SampleBean2
{
private String id;
private String age;
private String name;
private String sex;
private String addr;
public SampleBean2()
{
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getSex()
{
return sex;
}
public void setSex(String sex)
{
this.sex = sex;
}
public void setId(String id)
{
this.id = id;
}
public void setAge(String age)
{
this.age = age;
}
public String getId()
{
return id;
}
public String getAge()
{
return age;
}
public String getAddr()
{
return addr;
}
public void setAddr(String addr)
{
this.addr = addr;
}
}
//SampleBean.html
<title>使用<jsp:getProperty>和<jsp:setProperty>标记</title>
<p align = "center">编号
<input type = "text" name = "id">
</p>
<p align = "center">姓名
<input type = "text" name = "name">
</p>
<p align = "center">性别
<select name = "TheSex" id = "sex">
<option value = "男" selected>男</option>
<option value = "女">女</option>
</select>
</p>
<p align = "center">年龄
<input type = "text" name = "TheAge">
</p>
<p align = "center">
<input type = "submit" value = "提交">
<input type = "reset" value = "重置">
</p>
</form>
//SampleBean.jsp
<%@ page
language=“java”
contentType = “text/html;charset = GBK”
%>
<jsp:useBean id = “sampleBean2” class = “MyJavaBeanPackage.SampleBean2”/>
<%–方法一
<jsp:setProperty name = “sampleBean2” property = “*” />
–%>
<%-- 方法二 --%>
<jsp:setProperty name = “sampleBean2” property = “id”/>
<jsp:setProperty name = “sampleBean2” property = “name”/>
<%–方法三 --%>
<jsp:setProperty name = “sampleBean2” property = “addr” value = “洛阳师范学院”/>
<%-- 方法四 bean属性的名字可以与request参数不同–%>
<jsp:setProperty name = “sampleBean2” property = “sex” param = “TheSex”/>
<jsp:setProperty name = “sampleBean2” property = “age” param = “TheAge”/>
编号:<jsp:getProperty name = “sampleBean2” property = “id”/>
姓名:<jsp:getProperty name = “sampleBean2” property = “name”/>
性别:<jsp:getProperty name = “sampleBean2” property = “sex”/>
年龄:<jsp:getProperty name = “sampleBean2” property = “age”/>
住址:<jsp:getProperty name = “sampleBean2” property = “addr”/>
本文标签: 标签JSPsetProperty
版权声明:本文标题:jsp标签jsp:setProperty用法 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1728577677a1164672.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论