jsp:plugin运行Java Applet使用详解

<jsp:plugin>用来产生客户端浏览器的特别标签(object或embed),可以使用它来插入Applet或JavaBean。如果需要的插件不存在,它会下载插件,然后执行Java组件。 Java组件可以是一个applet或一个JavaBean。

语法

<jsp:plugin type="bean | applet" code="classFileName" 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> 

Width    Applet在Html页面上的宽度
Height    Applet在Html页面上的高度
Name    Applet在Html页面上的名称,用于区名一个Html页面上的多个Applet
Code    Applet类名,必须带后缀”class”当没有属性archive时,直接写类名当有属性archive时,必须带包名
Codebase    Applet的类相对路径,相对于Html页面位置
Archive    Applet所在Jar包的文件名

例子

//被jsp页面引用的Applet(MyApplet.java):
package com.jspdev.ch3;
import javax.swing.*;
import java.awt.*;
public class MyApplet extends JApplet{
    String img;
    public void paint(Graphics g)
    {
        Image image=getImage(getCodeBase(),img);
        g.drawImage(image,0,0,400,400,this);    //绘制一张图片
        g.setColor(Color.blue);
        g.setFont(new Font("宋体",2,24));
        g.drawString("sssssssss",40,170);    //绘制一个字符串
        g.setColor(Color.pink);
        g.setFont(new Font("NewsRoman",2,10));
        g.drawString(new java.util.Date().toString(),10,109);    //绘制一个日期字符串
    }
    public void init()
    {
        img=getParameter("image");    //获取plugin指令中的参数
    }
}
//在jsp中引用Applet(plugin.jsp)
<html>
    <head>
        <title>jsp:plugin演示</title>
    </head>
    <body>
        <jsp:plugin type="applet" code="com.jspdev.ch3.MyApplet" codebass="." align="center" width="200" height="200">
            <jsp:params>
                <jsp:param name="image" value="pic.jpg"/>
            </jsp:params>
            <jsp:fallback>error happens when insert applet</jsp:fallback>
        </jsp:plugin>
    </body>
</html>
//plugin.jsp浏览器端
<html>
    <head>
        <title>jsp:plugin演示</title>
    </head>
    <body>
        <object classid=clsid:8AD9CLFD832-04EE-11EW-B3J9-008493748FSD99 width="200" height="200" algin="center" codebase="http://java.sun.com/products/plugin/1.2.2/jinstall-1_2_2-win.cab#Version=1,2,2,0">
            <param name="java_code" value="com.jspdev.ch3.MyApplet">
            <param name="java_codebase" value=".">
            <param name="type" value="application/x-java-applet">
            <param name="image" value="pic.jpg">
            <comment>
                <embed type="application/x-java-applet;" width="200" height="200" algin="center" pluginspage="http://java.sun.com/products/plugin/" java_code="com.jspdev.ch3.MyApplet" java_codebase="." image="pic.jpg"/>
                <noembed>error happens when add insert applet</noembed>
            </comment>
        </object>
    </body>
<html>

执行结果:

图片被加上了一行字符串和日期。

总结

1. <jsp:plugin>元素用于在浏览器中播放或显示一个对象(典型的就是applet和Bean),而这种显示需要存在浏览器的java插件。 
2. <jsp:plugin>元素会指定对象是Applet还是Bean,同样也会指定class的名字,还有位置,另外还会指定将从哪里下载这个Java插件。

版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。