JSTL 标签使用 不断更新

1. JavaBean 中属性的set get在JSTL中的调用.

 

 

<jsp:useBean id="yyy" class="com.xxx.jsp.beans.pagedata.PageyyyData">

<jsp:setProperty name="yyy" property="*" />

</jsp:useBean>

 

 

<jsp:useBean>

 

<jsp:useBean> 指的是创建一个Bean实例并指定它的名字和作用范围

id="beanInstanceName"

scope="page | request | session | application" 缺省值是page,

      page - 你能在包含<jsp:useBean>元素的JSP文件以及此文件中的所有静态包含文件中使用Bean,直到页面执行完毕向客户端发回响应或转到另一个文件为止。

  request - 你在任何执行相同请求的Jsp文件中使用Bean,直到页面执行完毕向客户端发回响应或转到另一个文件为止。你能够使用Request对象访问Bean,比如request.getAttribute(beanInstanceName)

  session - 从创建Bean开始,你就能在任何使用相同session的Jsp文件中使用Bean.这个Bean存在于整个Session生存周期内,任何在分享此Session的Jsp文件都能使用同一Bean.注意在你创建Bean的Jsp文件中<% @ page %>指令中必须指定session=true

  application - 从创建Bean开始,你就能在任何使用相同application的Jsp文件中使用Bean.这个Bean存在于整个application生存周期内,任何在分享此application的Jsp文件都能使用同一Bean.

 

class="package.class"

使用new关键字以及class构造器从一个class中示例一个bean.这个class不能是抽象的,必须有一个公用的,没有参数的构造器.这个package的名字区别大小写。

type="package.class"

如果这个Bean已经在指定的范围中存在,那么写这个Bean一个新的数据库类型 。如果你没有使用class或beanName指定type,Bean将不会被示例.package和class的名字,区分大小写.

beanName="{package.class | <%= expression %>}" type="package.class"

使用java.beans.Beans.instantiate方法来从一个class或连续模版中示例一个Bean,同时指定Bean的类型。

  beanName可以是package和class也可以是表达式,它的值会传给Beans.instantiate.tupe的值可以和Bean相同。

  package 和 class 名字区分大小写.

 


<jsp:setProperty>

 

setProperty 意思: set 属性.

但是set 哪个属性呢?

 

   <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表单中的顺序排序
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值