Applet 是一种 Java 程序。它通常运行在支持 Java 的 Web 浏览器内。由于它有完整的 Java API支持,因此Applet 是一个全功能的 Java 应用程序。html
以下所示是独立的 Java 应用程序和 applet 程序之间重要的不一样:java
Applet 类中的四个方法给你提供了一个框架,你能够再该框架上开发小程序:web
每个 Applet 都是 java.applet.Applet 类的子类,基础的 Applet 类提供了供衍生类调用的方法,以此来获得浏览器上下文的信息和服务。编程
这些方法作了以下事情:小程序
除此以外,Applet 类还提供了一个接口,该接口供 Viewer 或浏览器来获取 Applet 的信息,而且来控制 Applet 的执行。浏览器
Viewer 多是:安全
Applet 类提供了对这些方法的默认实现,这些方法能够在须要的时候重写。服务器
"Hello,World"applet 都是按标准编写的。惟一被重写的方法是 paint 方法。网络
Applet 是一种 Java 程序。它通常运行在支持 Java 的 Web 浏览器内。由于它有完整的 Java API 支持,因此 Applet 是一个全功能的 Java 应用程序。app
<applet> 标签是在HTML文件中嵌入 Applet 的基础。如下是一个调用"Hello World"applet的例子;
1
2
3
4
5
6
7
8
9
|
<
html
>
<
title
>The Hello, World Applet</
title
>
<
hr
>
<
applet
code="HelloWorldApplet.class" width="320" height="120">
If your browser was Java-enabled, a "Hello, World"
message would appear here.
</
applet
>
<
hr
>
</
html
>
|
下面的例子演示了如何使用一个 Applet 响应来设置文件中指定的参数。该 Applet 显示了一个黑色棋盘图案和第二种颜色。
第二种颜色和每一列的大小经过文档中的 Applet 的参数指定。
CheckerApplet 在 init() 方法里获得它的参数。也能够在 paint() 方法里获得它的参数。然而,在 Applet 开始获得值并保存了设置,而不是每一次刷新的时候都获得值,这样是很方便,而且高效的。
Applet viewer 或者浏览器在 Applet 每次运行的时候调用 init() 方法。在加载 Applet 以后,Viewer 当即调用 init() 方法(Applet.init()什么也没作),重写该方法的默认实现,添加一些自定义的初始化代码。
Applet.getParameter() 方法经过给出参数名称获得参数值。若是获得的值是数字或者其余非字符数据,那么必须解析为字符串类型。
下例是 CheckerApplet.java 的修改:
1
2
3
4
5
6
7
8
9
10
|
import
java.applet.*;
import
java.awt.*;
public
class
CheckerApplet
extends
Applet
{
int
squareSize =
50
;
// 初始化默认大小
public
void
init () {}
private
void
parseSquareSize (String param) {}
private
Color parseColor (String param) {}
public
void
paint (Graphics g) {}
}
|
下面是 CheckerApplet 类的 init() 方法和私有的 parseSquareSize() 方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
public
void
init ()
{
String squareSizeParam = getParameter (
"squareSize"
);
parseSquareSize (squareSizeParam);
String colorParam = getParameter (
"color"
);
Color fg = parseColor (colorParam);
setBackground (Color.black);
setForeground (fg);
}
private
void
parseSquareSize (String param)
{
if
(param ==
null
)
return
;
try
{
squareSize = Integer.parseInt (param);
}
catch
(Exception e) {
// 保留默认值
}
}
|
该 Applet 调用 parseSquareSize(),来解析 squareSize 参数。parseSquareSize() 调用了库方法 Integer. parseInt() 该方法将一个字符串解析为一个整数,当参数无效的时候,Integer.parseInt() 抛出异常。
所以,parseSquareSize() 方法也是捕获异常的,并不容许 Applet 接受无效的输入。
Applet 调用 parseColor()方法将颜色参数解析为一个 Color 值。parseColor() 方法作了一系列字符串的比较,来匹配参数的值和预约义颜色的名字。你须要实现这些方法来使 Applet 工做。
将图形化的 Java 应用程序(是指,使用AWT的应用程序和使用 java 程序启动器启动的程序)转换成嵌入在web页面里的applet是很简单的。
下面是将应用程序转换成 Applet 的几个步骤:
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
AJAX 不是新的编程语言,而是一种使用现有标准的新方法。
AJAX 最大的优势是在不从新加载整个页面的状况下,能够与服务器交换数据并更新部分网页内容。
AJAX 不须要任何浏览器插件,但须要用户容许JavaScript在浏览器上执行。
运用XHTML+CSS来表达资讯;
运用JavaScript操做DOM(Document Object Model)来执行动态效果;
运用XML和XSLT操做资料;
运用XMLHttpRequest或新的Fetch API与网页服务器进行异步资料交换;
注意:AJAX与Flash、Silverlight和Java Applet等RIA技术是有区分的。
AJAX是基于现有的Internet标准,而且联合使用它们:
AJAX应用程序与浏览器和平台无关的!
上面的 AJAX 应用程序包含一个 div 和一个按钮。
div 部分用于显示来自服务器的信息。当按钮被点击时,它负责调用名为 loadXMLDoc() 的函数:
1
2
|
<
div
id="myDiv"><
h2
>使用 AJAX 修改该文本内容</
h2
></
div
>
<
button
type="button" onclick="loadXMLDoc()">修改内容</
button
>
|
接下来,在页面的 head 部分添加一个 <script> 标签。该标签中包含了这个 loadXMLDoc() 函数:
1
2
3
4
5
6
7
8
|
<
head
>
<
script
>
function loadXMLDoc()
{
.... AJAX 脚本执行 ...
}
</
script
>
</
head
>
|