📄 websphere-into-13.htm
字号:
<html><!-- #BeginTemplate "/Templates/more.dwt" -->
<head>
<!-- #BeginEditable "doctitle" -->
<title>csdn_WebSphere快速入门(13)</title>
<!-- #EndEditable -->
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<STYLE type=text/css>
A:link {
COLOR: #000000; FONT-FAMILY:verdana,宋体,新宋体; TEXT-DECORATION: none
}
A:visited {
COLOR: #333399; FONT-FAMILY:verdana,宋体,新宋体; TEXT-DECORATION: none
}
A:active {
COLOR: #ff0000; FONT-FAMILY:verdana,宋体,新宋体; TEXT-DECORATION: none
}
A:hover {
COLOR: black; TEXT-DECORATION: underline
}
BODY {
COLOR: #000000; FONT-SIZE:9pt; LETTER-SPACING: normal; LINE-HEIGHT: 150%; WORD-SPACING: 2em
}
TH {
FONT-SIZE: 9pt
}
TD {
FONT-SIZE: 9pt
}
TD.page {
COLOR: #000000; FONT-SIZE:9pt; LETTER-SPACING: normal; LINE-HEIGHT: 150%; WORD-SPACING: 2em
}
TD.title {
COLOR: #000000; FONT-FAMILY:verdana,宋体,新宋体
}
TD.detail {
COLOR: #9966ff; FONT-FAMILY:verdana,宋体,新宋体
}
</STYLE>
</head>
<body bgcolor="#FFFFFF" text="#000000" >
<div align="center"></div>
<table width="700" border="0" align="center">
<tr>
<table width="700" border="1" cellpadding="1" cellspacing="0" bordercolorlight="#9898ba" bordercolordark="#000000">
</table>
<br>
<table width="700" border="0">
<tr>
<td width="20"> </td>
<td colspan="2">
<div align="center">
<h3><b><!-- #BeginEditable "5" -->
<h3><font face="Verdana, Arial, Helvetica, sans-serif" ><b>WebSphere快速入门(13)</b></font></h3>
<!-- #EndEditable --></b></h3>
</div>
</td>
<td width="20"> </td>
</tr>
<tr>
<td width="20"> </td>
<td colspan="2"><!-- #BeginEditable "6" -->
<p>第五章 JSP技术 <br>
5.1 JSP简介 <br>
JSP(JavaServer Pages)是一种基于Java的脚本技术。在JSP 的众多优点之中,其中之一是它能将 HTML 编码从
Web 页面的业务逻辑中有效地分离出来。用 JSP 访问可重用的组件,如 Servlet、JavaBean 和基于 Java 的
Web 应用程序。JSP 还支持在 Web 页面中直接嵌入 Java 代码。可用两种方法访问 JSP 文件:浏览器发送 JSP
文件请求、发送至 Servlet 的请求。 <br>
1. JSP 文件访问 Bean 或其它能将生成的动态内容发送到浏览器的组件。图5-1说明了该 JSP 访问模型。当 Web 服务器接收到一个
JSP 文件请求时,服务器将请求发送至 WebSphere应用服务器。WebSphere应用服务器 对 JSP 文件进行语法分析并生成
Java 源文件(被编译和执行为 Servlet)。Java 源文件的生成和编译仅在初次调用 Servlet 时发生,除非已经更新了原始的
JSP 文件。在这种情况下,WebSphere应用服务器 将检测所做的更新,并在执行它之前重新生成和编译 Servlet。 <br>
图5-1:浏览器发送 JSP 文件请求 <br>
2. 发送至 Servlet 的请求生成动态内容,并调用 JSP 文件将内容发送到浏览器。图5-2说明了该访问模型。该访问模型使得将内容生成从内容显示中分离出来更为方便。WebSphere应用服务器
支持 HttpServiceRequest 对象和 HttpServiceResponse 对象的一套新方法。这些方法允许调用的
Servlet 将一个对象放入(通常是一个 Bean)请求对象中,并将该请求传递到另一个页面(通常是一个 JSP 文件)以供显示。调用的页面从请求对象中检索
Bean, 并用 JSP 来生成客户机端的 HTML。 </p>
<p>图5-2:发送至 Servlet 的请求 <br>
5.2 JSP示例 <br>
浏览器通过一个Web 页面中的HTML表单请求一个servlet(PopulateBeanServlet),该servlet创建一个名为
dataBean 的DataBean 实例,并调用 JSP 文件将内容发送到浏览器。Servlet 示例和 JSP 文件示例说明了启用内容分离的
JSP 访问模型。 <br>
A. Servlet 是由下列Web 页面中的 HTML 表单来调用的。 <br>
<HTML> <br>
<BODY> <br>
<H1>运行 PopulateBeanServlet</H1> <br>
<P>您是否希望运行 PopulateBeanServlet? <br>
<FORM action="/servlet/PopulateBeanServlet" method="GET">
<br>
<INPUT type="SUBMIT" value="Yes"> <br>
<INPUT type="SUBMIT" value="No"> <br>
</FORM> <br>
</BODY> <br>
</HTML> <br>
B. 被请求的servlet为PopulateBeanServlet, 其源代码如下: <br>
/******************************************************************
<br>
*Servlet 示例:PopulateBeanServlet.java <br>
*这个servlet创建一个名为 dataBean 的DataBean 实例,设置dataBean的若干个属性, <br>
*将dataBean放置在当前“请求”对象中, <br>
*调用 JSP 文件(DisplayData.jsp)来格式化并显示dataBean的数据 <br>
********************************************************************/
<br>
import java.io.*; <br>
import java.beans.Beans; <br>
import javax.servlet.*; <br>
import javax.servlet.http.*; <br>
import javax.ejb.CreateException; </p>
<p>public class PopulateBeanServlet extends HttpServlet { <br>
public void Service(HttpServletRequest req, HttpServletResponse
res) <br>
throws ServletException, IOException { <br>
try { <br>
dataBean = (DataBean) Beans.instantiate(this.getClass().getClassLoader(),
"DataBean"); <br>
} <br>
catch (Exception ex) { <br>
throw new ServletException("Can't create BEAN of class DataBean:
" <br>
metaData.setSQL(getSQLString()); <br>
} <br>
// Set some Bean properties (content generation) <br>
dataBean.setProp1("Value1"); <br>
dataBean.setProp2("Value2"); <br>
dataBean.setProp3("Value3"); <br>
// To send the Bean to a JSP file for content formatting and display
<br>
// 1) 将dataBean放置在当前“请求”对象中, <br>
((com.sun.server.http.HttpServiceRequest) req).setAttribute("dataBean",
dataBean); <br>
// 2) 使用callPage 方法调用JSP文件,文件名为DisplayData.jsp,并把请求对象传递给JSP。 <br>
((com.sun.server.http.HttpServiceResponse) res).callPage("/DisplayData.jsp",
req); <br>
} //end of service mehtod <br>
} /* end of class PopulateBeanServlet */ </p>
<p>C. 被调用的JSP文件为DisplayData.jsp,其内容如下: <br>
<!-- 该 JSP 文件获得在请求对象中传递的 dataBean,并显示该 Bean 的属性。 --> <br>
<html> <br>
<head> <br>
<title>Bean Data Display</title> <br>
</head> </p>
<p><!-- Get the Bean using the BEAN tag --> <br>
<bean name="dataBean" type="DataBean" introspect="no"
create="no" scope="request"> <br>
</bean> <br>
<body> <br>
<!-- There are three ways to access Bean properties --> <br>
<!-- Using a JSP scriptlet --> <br>
<% out.println("The value of Bean property 1 is " +
dataBeans.getProp1()); <br>
%> </p>
<p><!-- Using a JSP expression --> <br>
<p>The value of Bean property 2 is <br>
<%= dataBean.getProp2() %> </p> </p>
<p><!--Using the INSERT tag --> <br>
<p>The value of Bean property 3 is <br>
<insert bean=dataBean property=prop3 default="No property
value" > <br>
</insert></p> </p>
<p></body> <br>
</html> <br>
</p>
<!-- #EndEditable --></td>
<td width="20"> </td>
</tr>
</table>
<div align="center">
<br>
</div>
</body>
<!-- #EndTemplate --></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -