zoukankan      html  css  js  c++  java
  • jsp标签jsp:setProperty用法

    <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;

    publicclass SampleBean2

    {

    private String id;

    private String age;

    private String name;

    private String sex;

    private String addr;

    public SampleBean2()

    {

    }

    public String getName()

    {

    returnname;

    }

    publicvoid setName(String name)

    {

    this.name = name;

    }

    public String getSex()

    {

    returnsex;

    }

    publicvoid setSex(String sex)

    {

    this.sex = sex;

    }

    publicvoid setId(String id)

    {

    this.id = id;

    }

    publicvoid setAge(String age)

    {

    this.age = age;

    }

    public String getId()

    {

    returnid;

    }

    public String getAge()

    {

    returnage;

    }

    public String getAddr()

    {

    returnaddr;

    }

    publicvoid 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>

    //参考文献:

    1<<从零开始——JSP动态网页制作基础培训教程-源代码>>

    2

    http://hi.baidu.com/ffcheng1987/blog/item/44c71755925761c7b645ae2c.html

  • 相关阅读:
    codeforces 519E A and B and Lecture Rooms lca倍增
    codeforces 702E Analysis of Pathes in Functional Graph 倍增
    hdu 5126 stars cdq分治套cdq分治+树状数组
    hdu 5442 Favorite Donut 最大表示法+kmp
    hdu 5446 Unknown Treasure 中国剩余定理+lucas
    hdu 5769 Substring 后缀数组
    codevs 1913 数字梯形问题 费用流
    Python for Infomatics 第13章 网页服务二(译)
    Python for Infomatics 第13章 网页服务一(译)
    Python for Infomatics 第12章 网络编程六(译)
  • 原文地址:https://www.cnblogs.com/wuyida/p/6300394.html
Copyright © 2011-2022 走看看