📄 0032.htm
字号:
</p><a name="10937"> </a>
<h4> 属性</h4>
<ul><a name="10935"> </a>
<li>type="bean | applet"<p>.将被执行的插件对象的类型,你必须得指定这个是Bean还是applet,因为这个属性没有缺省值.
</p><a name="11514"> </a>
<li>code="<em>classFileName</em>"<p>将会被Java插件执行的Java Class的名字,必须以.class结尾。这个文件必须存在于codebase属性指定的目录中.
</p><a name="11515"> </a>
<li>codebase="<em>classFileDirectoryName</em>"<p>将会被执行的Java Class文件的目录(或者是路径),如果你没有提供此属性,那么使用<jsp:plugin>的jsp文件的目录将会被使用.
</p><a name="11547"> </a>
<li>name="<em>instanceName</em>"<p>这个Bean或applet实例的名字,它将会在Jsp其它的地方调用.
</p><a name="11553"> </a>
<li>archive="<em>URIToArchive</em>, ..."<p>一些由逗号分开的路径名,这些路径名用于预装一些将要使用的class,这会提高applet的性能.
</p><a name="11516"> </a>
<li>align="<strong>bottom</strong> | top | middle | left | right"<p>图形,对象,Applet的位置,有以下值:
</p>
<ul>
<li><code>bottom</code>
<li><code>top</code>
<li><code>middle</code>
<li><code>left</code>
<li><code>right</code>
</ul>
<a name="11518"> </a>
<li>height="<em>displayPixels</em>" width="<em>displayPixels</em>"<p>Applet或Bean将要显示的长宽的值,此值为数字,单位为象素.
</p><a name="11568"> </a>
<li>hspace="<em>leftRightPixels</em>" vspace="<em>topBottomPixels</em>"<p>Applet或Bean显示时在屏幕左右,上下所需留下的空间,单位为象素.
</p><a name="11520"> </a>
<li>jreversion="<em>JREVersionNumber</em> | <strong>1.1</strong>"
<p>Applet或Bean运行所需的Java Runtime Environment (JRE) 的版本.
缺省值是 1.1.
</p><a name="11525"> </a>
<li>nspluginurl="<em>URLToPlugin</em>"
<p>Netscape Navigator用户能够使用的JRE的下载地址,此值为一个标准的URL,如http://www.aspcn.com/jsp
</p><a name="11526"> </a>
<li>iepluginurl="<em>URLToPlugin</em>"<p>IE用户能够使用的JRE的下载地址,此值为一个标准的URL,如http://www.aspcn.com/jsp
</p>
<p>
</p><a name="11538"> </a>
<li><jsp:params> [ <jsp:param name="<em>parameterName</em>"
value="{<em>parameterValue</em> | <%= <em>expression</em> %>}" /> ]+ </jsp:params><p>你需要向applet或Bean传送的参数或参数值。
</p><a name="11583"> </a>
<li><jsp:fallback> <em>text message for user</em> </jsp:fallback><p>一段文字用于Java
插件不能启动时显示给用户的,如果插件能够启动而applet或Bean不能,那么浏览器会有一个出错信息弹出.
</ul>
<h2 align="center"> <jsp:setProperty></h2>
<p>设置Bean中的属性值.
</p><a name="9318"> </a>
<h4> JSP语法</h4>
<blockquote>
<jsp:setProperty
<br>
name="<em>beanInstanceName</em>"
<br>
{
<br> property= "*" |
<br>
property="<em>propertyName</em>" [ param="<em>parameterName</em>" ] |
<br>
property="<em>propertyName</em>" value="{<em>string</em> | <%= <em>expression</em> %>}"
<br>
}
<br>
/>
</blockquote><a name="16463"> </a>
<h4> 例子</h4>
<blockquote>
<jsp:setProperty name="mybean" property="*" />
<br>
<jsp:setProperty name="mybean" property="username" />
<br>
<jsp:setProperty name="mybean" property="username" value="Steve" />
</blockquote>
<a name="17957"> </a>
<h4> 描述</h4>
<p><jsp:setProperty>元素使用Bean给定的setter方法,在Bean中设置一个或多个属性值。你在使用这个元素之前必须得使用<jsp:useBean>声明此Bean.因为,<jsp:useBean>和<jsp:setProperty>是联系在一起的,同时这他们使用的Bean实例的名字也应当相匹配(就是说,在<jsp:setProperty>中的name的值应当和<jsp:useBean>中id的值相同)
</p><p>你能使用多种方法利用<jsp:setProperty>来设定属性值 :
</p><ul><a name="11925"> </a>
<li>通过用户输入的所有值(被做为参数储存中request对象中)来匹配Bean中的属性
<li>通过用户输入的指定的值来匹配Bean中指定的属性
<li>在运行时使用一个表达式来匹配Bean的属性
</ul><p>每一种设定属性值的方法都有其特定的语法,下面我们会来讲解
</p><a name="18217"> </a>
<h4>属性及其用法</h4>
<ul><a name="17612"> </a>
<li>name="<em>beanInstanceName</em>"<p>表示已经在<jsp:useBean>中创建的Bean实例的名字.
</p><a name="9918"> </a>
<li>property="*"<p>储存用户在Jsp输入的所有值,用于匹配Bean中的属性。在Bean中的属性的名字必须和request对象中的参数名一致.
</p><p>从客户传到服器上的参数值一般都是字符类型
,这些字符串为了能够在Bean中匹配就必须转换成其它的类型,下面的表中列出了Bean属性的类型以及他们的转换方法.<p><b>把字符串转化为其它类型的方法.</b>
<Table Border="3">
<caption>
</caption>
<tr><th><p>Property 类型
</p></th><th>方法</th></tr>
<tr><td><br><p> boolean or Boolean
</p></td><td><br><p> java.lang.Boolean.valueOf(String)
</p></td></tr>
<tr><td><br><p>byte or Byte
</p></td><td><br><p> java.lang.Byte.valueOf(String)
</p></td></tr>
<tr><td><br><p> char or Character
</p></td><td><br><p> java.lang.Character.valueOf(String)
</p></td></tr>
<tr><td><br><p> double or Double
</p></td><td><br><p> java.lang.Double.valueOf(String)
</p></td></tr>
<tr><td><br><p> integer or Integer
</p></td><td><br><p> java.lang.Integer.valueOf(String)
</p></td></tr>
<tr><td><br><p> float or Float
</p></td><td><br><p> java.lang.Float.valueOf(String)
</p></td></tr>
<tr><td><br><p> long or Long
</p></td><td><br><p> java.lang.Long.valueOf(String)
</p></td></tr>
</Table>
<p>如果request对象的参数值中有空值,那么对应的Bean属性将不会设定任何值。同样的,如果Bean中有一个属性没有与之对应的Request参数值,那么这个属性同样也不会设定.
</p><a name="9919"> </a>
<li>property="<em>propertyName</em>" [ param="<em>parameterName</em>" ]<p>使用request中的一个参数值来指定Bean中的一个属性值。在这个语法中,property指定Bean的属性名,param指定request中的参数名.
</p><p>如果bean属性和request参数的名字不同,那么你就必须得指定property和param
,如果他们同名,那么你就只需要指明property就行了.
</p><p>如查参数值为空(或未初始化),对应的Bean属性不被设定.
</p><a name="9920"> </a>
<li>property="<em>propertyName</em>" value="{<em>string</em> | <%= <em>expression</em> %>}"<p>使用指定的值来设定Bean属性。这个值可以是字符串,也可以是表达式。如果这个字符串,那么它就会被转换成Bean属性的类型(查看上面的表).如果它是一个表达式,那么它类型就必须和它将要设定的属性值的类型一致。
</p><p>如果参数值为空,那么对应的属性值也不会被设定。另外,你不能在一个<jsp:setProperty>中同时使用param和value
</p></ul>
<h4> 技巧</h4>
<ul><a name="19199"> </a>
<li>如果你使用了property="*",那么Bean的属性没有必要按Html表单中的顺序排序
<h2 align="center"> <jsp:useBean></h2>
<p>创建一个Bean实例并指定它的名字和作用范围.
</p><a name="9348"> </a>
<h4> JSP 语法</h4>
<blockquote>
<jsp:useBean
<br>
id="<em>beanInstanceName</em>"
<br>
scope="<strong>page</strong> | request | session | application"
<br>
{
<br>
class="<em>package.class</em>" |
<br>
type="<em>package.class</em>" |
<br>
class="<em>package.class</em>" type="<em>package.class</em>" |
<br>
beanName="{<em>package.class</em><em> </em>|<em> </em><%= <em>expression</em> %>}" type="<em>package.class</em>"
<br>
}
<br>
{
<br>
/> |
<br>
> <em>other elements </em></jsp:useBean>
<br>
}
</blockquote>
<a name="16474"> </a>
<h4> 例子</h4>
<blockquote>
<jsp:useBean id="cart" scope="session" class="session.Carts" />
<br>
<jsp:setProperty name="cart" property="*" />
<p>
<jsp:useBean id="checking" scope="session" class="bank.Checking" >
<br>
<jsp:setProperty name="checking" property="balance" value="0.0" />
<br>
</jsp:useBean>
</blockquote><a name="9356"> </a>
<h4> 描述</h4>
<p><jsp:useBean>用于定位或示例一个JavaBeans组件。<jsp:useBean>首先会试图定位一个Bean实例,如果这个Bean不存在,那么<jsp:useBean>就会从一个class或模版中进行示例。
</p><p>为了定位或示例一个Bean,<jsp:useBean>会进行以下步聚,顺序如下:
</p><ol>
<a name="9817"> </a>
<li>通过给定名字和范围试图定位一个Bean.
<li>对这个Bean对象引用变量以你指定的名字命名.
<li>如果发现了这个Bean,将会在这个变量中储存这个引用。如果你也指定了类型,那么这个Bean也设置为相应的类型.
<li>如果没有发现这个Bean,将会从你指定的class中示例,并将此引用储存到一个新的变量中去。如果这个class的名字代表的是一个模版,那么这个Bean被<code>java.beans.Beans.instantiate示例.</code>
<li>如果<jsp:useBean>已经示例(不是定位)了Bean,同时<jsp:useBean>和</jsp:useBean>中有元素,那么将会执行其中的代码.
</ol>
<p><jsp:useBean>元素的主体通常包含有<jsp:setProperty>元素,用于设置Bean的属性值。正如上面第五步所说的,<jsp:useBean>的主体仅仅只有在<jsp:useBean>示例Bean时才会被执行,如果这个Bean已经存在,<jsp:useBean>能够定位它,那么主体中的内容将不会起作用
</p><a name="10963"> </a>
<h4> 属性以及用法</h4>
<ul><a name="10964"> </a>
<li>id="<em>beanInstanceName</em>"<p>在你所定义的范围中确认Bean的变量,你能在后面的程序中使用此变量名来分辨不同的Bean
</p><p>这个变量名对大小写敏感,必须符合你所使用的脚本语言的规定,在Java
Programming Language中,这个规定在Java Language
规范已经写明。如果这个Bean已经在别的<jsp:useBean>中创建,那么这个id的值必须与原来的那个id值一致.
</p><a name="10966"> </a>
<li>scope="<strong>page</strong> | request | session | application"<p>Bean存在的范围以及id变量名的有效范围。缺省值是page,以下是详细说明:
</p><p>
<ul>
<li>page - 你能在包含<jsp:useBean>元素的JSP文件以及此文件中的所有静态包含文件中使用Bean,直到页面执行完毕向客户端发回响应或转到另一个文件为止。<p>
<li>request - 你在任何执行相同请求的Jsp文件中使用Bean,直到页面执行完毕向客户端发回响应或转到另一个文件为止。你能够使用Request对象访问Bean,比如<code>request.getAttribute(</code><em>beanInstanceName</em><code>)</code><p>
<li>session - 从创建Bean开始,你就能在任何使用相同session的Jsp文件中使用Bean.这个Bean存在于整个Session生存周期内,任何在分享此Session的Jsp文件都能使用同一Bean.注意在你创建Bean的Jsp文件中<%
@ page %>指令中必须指定session=true<p>
<li>application - 从创建Bean开始,你就能在任何使用相同application的Jsp文件中使用Bean.这个Bean存在于整个application生存周期内,任何在分享此application的Jsp文件都能使用同一Bean.
</ul>
<li>class="<em>package.class</em>"<p>使用new关键字以及class构造器从一个class中示例一个bean.这个class不能是抽象的,必须有一个公用的,没有参数的构造器.这个package的名字区别大小写。
</p><a name="19433"> </a>
<li>type="<em>package.class</em>"<p>如果这个Bean已经在指定的范围中存在,那么写这个Bean一个新的数据库类型
。如果你没有使用class或beanName指定type,Bean将不会被示例.package和class的名字,区分大小写.
</p>
<li>beanName="{<em>package.class</em> | <%= <em>expression</em> %>}" type="<em>package.class</em>"<p>使用java.beans.Beans.instantiate方法来从一个class或连续模版中示例一个Bean,同时指定Bean的类型。
</p><p>beanName可以是package和class也可以是表达式,它的值会传给Beans.instantiate.tupe的值可以和Bean相同。
</p><p> package 和 class 名字区分大小写.
</table>
<p align="center"><script src="../../2.js"></script></a>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -