首页 > Java > java教程 > jsp中setproperty怎么用?

jsp中setproperty怎么用?

藏色散人
发布: 2020-09-19 11:30:20
原创
5432 人浏览过

jsp中的“setproperty”是用来设置已经实例化的Bean对象的属性,其语法如“”。

jsp中setproperty怎么用?

jsp标签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转换。 

第四种形式:

<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
<html>
  <head>
    <title>使用<jsp:getProperty>和<jsp:setProperty>标记</title>
  </head>
  
  <body>
   <form name = "form1" action = "Sample2.jsp" method = "post">
    <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>
   </body>
 </html>
登录后复制
//SampleBean.jsp
<%@ page
 language="java" 
 contentType = "text/html;charset = GBK"
%>
 
<jsp:useBean id = "sampleBean2" class = "MyJavaBeanPackage.SampleBean2"/> 
<html>
 <head>
  <title>在JavaBean中存放数据</title>
 </head>
 <body>
  <%--方法一
   <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"/>
  <center>
   编号:<jsp:getProperty name = "sampleBean2" property = "id"/><br>
   姓名:<jsp:getProperty name = "sampleBean2" property = "name"/><br>
   性别:<jsp:getProperty name = "sampleBean2" property = "sex"/><br> 
   年龄:<jsp:getProperty name = "sampleBean2" property = "age"/><br>
   住址:<jsp:getProperty name = "sampleBean2" property = "addr"/><br>
  </center>
 </body>
</html>
登录后复制


 


 


以上是jsp中setproperty怎么用?的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板