<jsp:plugin>用来产生客户端浏览器的特别标签(object或embed),可以使用它来插入Applet或JavaBean。
当jsp文件被编译把结果发给浏览器是,<jsp:plugin>就会根据浏览器版本替换成<object>(针对HTML 4.0)或<embed>(针对HTML 3.2)元素。一般而言,<jsp:plugin>会指定对象是Applet还是JavaBean,class的名字以及从哪里去下载这个java插件。
示例:
被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>
运行效果:
图片被加上了一行字符串和日期。