?? usebean.jsp.html
字號:
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>Using a Bean in a JSP Page
(Java Developers Almanac Example)
</TITLE>
<META CONTENT="Patrick Chan" NAME="AUTHOR">
<META CONTENT="Code Examples from The Java Developers Almanac 1.4" NAME="DESCRIPTION">
<META CONTENT="Addison-Wesley/Patrick Chan" NAME="OWNER">
<META CONTENT="3/20/02" NAME="revision">
<STYLE TYPE="text/css">
<!-- BODY CODE {font-family: Courier, Monospace; font-size: 11pt} TABLE, BODY {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt} PRE {font-family: Courier, Monospace; font-size: 10pt} H3 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11pt} A.eglink {text-decoration: none} A:hover.eglink {text-decoration: underline} -->
</STYLE>
</HEAD>
<BODY>
<TABLE CELLSPACING="0" CELLPADDING="0" BORDER="0">
<TR>
<TD rowspan="3"><A HREF="/?l=ex"><IMG BORDER="0" ALIGN="BOTTOM" HSPACE="10" SRC="/egs/almanac14a.jpg"></A></TD><TD VALIGN="top"><font face="Times" size="6"><b>The Java Developers Almanac 1.4</b></font>
<br>
Order this book from <a href="/cgi-bin/scripts/redirect.pl?l=ex&url=http://www.amazon.com/exec/obidos/ASIN/0201752808/xeo">Amazon</a>.
</TD>
</TR>
<TR>
<TD align="right" valign="bottom">
<FORM method="get" action="/cgi-bin/search/find.pl">
<INPUT size="25" name="words" type="text"><INPUT value="Search" type="submit">
</FORM>
</TD>
</TR>
</TABLE>
<HR color="#6666cc">
<DIV ALIGN="LEFT">
<A HREF="/">Home</A>
>
<A HREF="../index.html">List of Packages</A>
>
<B><A HREF="../javax.servlet.jsp/pkg.html">javax.servlet.jsp</A></B><font color="#666666" SIZE="-2">
[18 examples]
</font>
>
<B><A HREF="../javax.servlet.jsp/pkg.html#Java%20Server%20Pages%20Input">Java Server Pages Input</A></B><font color="#666666" SIZE="-2">
[4 examples]
</font>
</DIV><P>
<h3>
e1055.
Using a Bean in a JSP Page</h3>
To use a bean in a JSP page, three attributes must be supplied - an
id, which provides a local name for the bean, the bean's class name,
which is used to instantiate the bean if it does not exit, and a
scope, which specifies the lifetime of the bean.
<P> There are four scopes available - page, request, session, and
application. A page-scoped bean is available only within the JSP page
and is destroyed when the page has finished generating its output for
the request. A request-scoped bean is destroyed when the response is
sent. A session-scoped bean is destroyed when the session is
destroyed. An application-scoped bean is destroyed when the web
application is destroyed.
<P>
This example retrieves a session-scoped bean and makes it available
using the id <code>myBean</code>. The bean is automatically
created if it does not exist:
<pre>
<jsp:useBean id=<font color="#0066ff"><i>"myBean"</i></font> class=<font color="#0066ff"><i>"com.mycompany.MyBean"</i></font> scope="session" />
</pre>
If it is necessary to initialize the bean after it is created, the
initialization code can be placed in the body of the <code>jsp:useBean</code> action.
The body will not be executed if the bean already exists.
Here is an example:
<pre>
<jsp:useBean id=<font color="#0066ff"><i>"myBean2"</i></font> class=<font color="#0066ff"><i>"com.mycompany.MyBean"</i></font> scope="session">
<%-- this body is executed only if the bean is created --%>
<%-- intialize bean properties --%>
<jsp:setProperty name=<font color="#0066ff"><i>"myBean2"</i></font> property=<font color="#0066ff"><i>"prop1"</i></font> value=<font color="#0066ff"><i>"123"</i></font> />
</jsp:useBean>
</pre>
The value of a bean property can be included in the generated output
using the <code>jsp:getProperty</code> action:
<pre>
<jsp:getProperty name=<font color="#0066ff"><i>"myBean"</i></font> property=<font color="#0066ff"><i>"prop1"</i></font> />
<jsp:getProperty name=<font color="#0066ff"><i>"myBean"</i></font> property=<font color="#0066ff"><i>"prop2"</i></font> />
</pre>
The <code>jsp:useBean</code> action also declares a local Java variable to hold
the bean object. The name of the local variable is exactly the value
of the id attribute. Here is an example that accesses the bean
within a scriptlet:
<pre>
<%
if (myBean.getProp1() % 2 == 0) {
out.println("<font color=\"red\">"+myBean.getProp1()+"</font>");
} else {
out.println("<font color=\"green\">"+myBean.getProp1()+"</font>");
}
%>
</pre>
Here is the bean used in the example:
<pre>
package com.mycompany;
public class MyBean {
// Initialize with random values
int prop1 = (int)(Integer.MAX_VALUE*Math.random());
String prop2 = ""+Math.random();
public int getProp1() {
return prop1;
}
public void setProp1(int prop1) {
this.prop1 = prop1;
}
public String getProp2() {
return prop2;
}
public void setProp2(String prop2) {
this.prop2 = prop2;
}
}
</pre>
<P><table width="600" CELLSPACING="0" CELLPADDING="2" BORDER="0">
<tr>
<td bgcolor="#6666cc" align="center"><font color="#ffffff">
Related Examples
</font></td>
</tr>
</table>
e1052. <a class="eglink" href="getparam.html?l=rel">
Getting a Request Parameter in a JSP Page
</a>
<br>
e1053. <a class="eglink" href="include.jsp.html?l=rel">
Including a File in a JSP Page
</a>
<br>
e1054. <a class="eglink" href="caller.jsp.html?l=rel">
Passing Parameters to Another JSP Page
</a>
<br>
<table width="600" CELLSPACING="0" CELLPADDING="2" BORDER="0">
<tr>
<td align="left">
<br>
See also:
<a class="eglink" href="/egs/javax.servlet.jsp/pkg.html?l=rel#Java%20Server%20Pages">
Java Server Pages
</a>
<a class="eglink" href="/egs/javax.servlet.jsp/pkg.html?l=rel#Java%20Server%20Pages%20Headers">
Java Server Pages Headers
</a>
<a class="eglink" href="/egs/javax.servlet.jsp/pkg.html?l=rel#Java%20Server%20Pages%20Output">
Java Server Pages Output
</a>
</td>
</tr>
</table>
<br>
<br>
<FONT FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="0">
© 2002 Addison-Wesley.
</FONT>
</BODY>
</HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -