问题和练习的答案:Servlets
Questions
- 问题:Servlets 可以扩展哪些类?
答:Servlets 可以扩展java.applet.Applet
类或java.swing.JApplet
类。
java.applet.Applet
类扩展了java.awt.Panel
类,并使您能够使用 AWT 包中的 GUI 工具。
java.swing.JApplet
类是java.applet.Applet
的子类,它也使您能够使用 Swing GUI 工具。
- 问题:您使用
start()
方法是什么?
答案:当小应用程序必须在初始化之后必须执行一个任务,然后再接收用户 Importing 时,才使用start()
方法。 start()
方法或者执行 applet 的工作,或者(更有可能)启动一个或多个线程来执行该工作。
- 问题:对或错:Servlets 可以与 Internet 上的任何主机构建网络连接。
答案: 错误 :Servlets 只能连接到它来自的主机。
- 问题:如何从 applet 的代码中获取 JNLP 文件中指定的参数的值?
答:您使用getParameter("Parameter name")
方法,该方法返回参数的 String 值。
- 问题:哪个类使 applet 能够与 applet 的网页中的 JavaScript 代码进行交互?
答案:netscape.javascript.JSObject
类使 applet 能够与 applet 网页中的 JavaScript 代码进行交互。
- 问题:对或错:Servlets 可以修改父网页的内容。
答: 是 :Applets 可以使用com.sun.java.browser.plugin2.DOM
类的getDocument
方法和 Common DOM API 来修改父网页的内容。
Exercises
- 练习:
Exercise
applet 的父网页具有一个名为memberId
的 JavaScript 变量。编写代码以将 Servlets 的start
方法中的memberId
的值设置为等于“ 123489”。
Answer:
import java.applet.Applet;
import netscape.javascript.*; // add plugin.jar to
// classpath during
// compilation
public class Exercise extends Applet {
public void start() {
try {
JSObject window =
JSObject.getWindow(this);
window.setMember("memberId", "123489");
} catch (JSException jse) {
jse.printStackTrace();
}
}
}