動作可以在頁面中插入 Java Applet 小程序或 JavaBean,它們能夠在客戶端運行,但此時,需要在 IE 瀏覽器中安裝 Java 插件。當 JSP 文件被編譯并送往瀏覽器時, 動作將會根據瀏覽器的版本,替換成
注意,
通常,元素會指定對象是 Applet 還是 Bean,同樣也會指定 class 的名字以及位置。另外,還會指定將從哪里下載 Java 插件。該動作的語法格式如下:
<jsp:plugin
type="bean|applet" code="ClassFi1eName"
codebase="classFileDirectoryName"
[name="instanceName"]
[archive="URIToArchive,..."]
[align="bottom|top|middle|left|right"]
[height="displayPixels"]
[width="displayPixels"]
[hspace="leftRightPixels"]
[vspace="topBottomPixels"]
[jreversion="JREVersionNumber|1.1"]
[nspluginurl="URLToPlugin"]
[iepluginurl="URLToPlugin"] >
[<jsp:params>
<jsp:param name="parameterName"
value="{parameterValue|<%=expression %>" />
</jsp:params>]
[<jsp:fallback>text message for user</jsp:fallback>]
</jsp:plugin>
參數說明如下:
1.type 屬性的作用是定義插入對象的類型,對象類型有兩個值,分別是 bean 或者 applet。(必須定義的屬性)
2.code 屬性定義插入對象的類名,該類必須保存在 codebase 屬性指定的目錄內。(必須定義的屬性)
3.codebase 屬性定義對象的保存目錄。(必須定義的屬性)
4.name 屬性定義 bean 或 Applet 的名字。
5.archive 屬性定義 Applet 運行時需要的類包文件。
6.align 屬性定義 Applet 的顯示方式。
7.height 屬性定義 Applet 的高度。
8.width 屬性定義 Applet 的長度。
9.hspace 屬性定義 Applet 的水平空間。
10.vspace 屬性定義 Applet 的垂直空間。
11.jreversion 屬性定義 Applet 運行時所需要的 JRE 版本,缺省值是 1.1。
12.nspluginurl 屬性定義 Netscape Navigator 用戶在沒有定義 JRE 運行環境時下載 JRE 的地址。
13.iepluginurl 屬性定義 IE 用戶在沒有定義 JRE 運行環境時下載 JRE 的地址。
14.jsp:params 標識的作用是定義 Applet 的傳入參數。
15.jsp:fallback 標識的作用是當對象不能正確顯示時傳給用戶的信息。
【例1】使用<jsp:plugin>動作標記在 JSP 中加載 Java Applet 小程序。
① 創建 2-23.jsp 頁面,使用<jsp:plugin>動作標記加載:
<%@ page contentType="text/html; charset=utf-8" %>
<html>
<body>
加載MyApplet.class文件的結果如下: <hr/>
<jsp:plugin type="applet" code="MyApplet.class" codebase="."
jreversion="1.2" width="400" heigh="80">
<jsp:fallback>
加載Java Applet小程序失敗!
</jsp:fallback>
</jsp:plugin>
</body>
</html>
② 其中插件所執行的類 MyApplet.class 的源文件為 MyApplet.java,代碼如下:
import java.applet.*;
import java.awt.*;
public class MyApplet extends Applet
{
public void paint(Graphics g)
{
g.setColor(Color.red);
g.drawString("您好!我就是 Applet 小程序!",5,10);
g.setColor(Color.green);
g.drawString("我是通過應用<jsp:plugin>動作標記",5,30);
g.setColor(Color.blue);
g.drawString("將 Applet 小程序嵌入到 JSP 文件中",5,50);
}
}
將 2-23.jsp 及 MyApplet.java 文件經過 Java 編譯器編譯成功后,生成的 MyApplet.class 字節文件都存放在 ch02 目錄下。
重新啟動 Tomcat 后,在 IE 瀏覽器的地址欄中輸入 http://localhost:8080/ch02/2-23.jsp,按 Enter 鍵后,若客戶機上沒有安裝 JYM(Java 虛擬機),將會訪問 Sun 公司的網站,并且彈出下載 Java plugin 的界面。
下載完畢后,將會出現 Java plugin 插件的安裝界面,可以按照向導提示,逐步完成安裝過程。然后,就可以使用 JVM 而不是 IE 瀏覽器自帶的 JVM 來加載執行 MyApplet.class 字節碼文件了,最終得到的運行結果如圖 1 所示。
圖1 使用<jsp:plugin>標記在JSP中加載Java Applet小程序