《Java编程思想》读书笔记(3)

简介:
 好了,上一次笔记中我写了第一个Applet程序,但还没有运行,对吗?恩,接下来就完成这个任务。先把代码编译成class文件,然后只要创建这样一个包含如下代码的hello.html文件就可以了:<applet code= TestApplet width=100 height=50></applet>,这样在IE浏览器里就可以直接运行了。或者你可以在dos命令行中用appletviewer hello.html来启动小应用程序查看器(AppletWiwer)运行这个applet。
但是随后而来的浏览器和语言大战使我们(不仅是程序员,还包括最终用户)都成了输家。不久,Sun发现再也不能指望靠浏览器来支持风味醇正的Java了,唯一的解决方案是利用浏览器的扩展机制来提供"插件(add-on)"。通过这个办法(要想禁掉Java,除非把所有第三方的插件全都禁掉,但是为了获取竞争优势,没有一个浏览器的提供商会这么做的),Sun确保了Java不会被敌对的浏览器提供商给禁掉。汗,这一段,真是没看懂,究竟是怎么使java会被禁掉的?

对于Internet Explorer,这种扩展机制就是ActiveX的控件,而Netscape的则是plugin。(这就是Applet和ActiveX两者之间的联系吗?)你做页面时必须为这两个浏览器各写一套标记,不过JDK自带了一个能自动生成标记的HTMLconverter工具。
2.gif
下面就是我用HTMLconverter处理过的hello.html页面:
<html>
        <!--"CONVERTED_APPLET"-->
<!-- HTML CONVERTER -->
<object
    classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
    codebase = "http://java.sun.com/update/1.5.0/jinstall-1_5-windows-i586.cab#Version=5,0,0,5"
    WIDTH = 100 HEIGHT = 50 >
    <PARAM NAME = CODE VALUE = HelloTest >
    <param name = "type" value = "application/x-java-applet;version=1.5">
    <param name = "scriptable" value = "false">
 
    <comment>
        <embed
            type = "application/x-java-applet;version=1.5" \
            CODE = HelloTest \
            WIDTH = 100 \
            HEIGHT = 50
            scriptable = false
            pluginspage = "http://java.sun.com/products/plugin/index.html#download">
            <noembed>
            
            </noembed>
        </embed>
    </comment>
</object>
 
<!--
<APPLET CODE = HelloTest WIDTH = 100 HEIGHT = 50>
 
 
</APPLET>
-->
<!--"END_CONVERTED_APPLET"-->
 
</html>
code的值是applet所处的.class文件的名字,width和height则表示applet的初始尺寸(和前面一样,以象素为单位)。此外applet标记里面还可以放一些东西:到哪里去找.class文件(codebase),怎样对齐(align),applet相互通讯的时候要用的标识符(name),以及提供给applet的参数。参数的格式是这样的:

<param name="identifier" value = "information">
你可以根据需要,加任意多个参数。
如果要在Web网站上测试applet,问题就有些复杂了。首先,你得先有一个网站。对绝大多数人来讲,网站就是第三方的ISP(Internet服务提供商)机器上的某个目录。由于applet只是几个文件,因此ISP不会提供特殊支持,所以你得自己想办法把HTML文件和.class文件传到指定的ISP的机器上的目录里。这一步通常是由FTP完成的。好在FTP的工具很多,有的是freeware,有的是shareware。由此看来,似乎在网站上测试applet,就是用FTP把文件传到ISP的机器上,然后再连到网站,用浏览器打开页面,等到applet跳出来就大功告成了。真的是这样吗?

这里就是会让你栽跟头的地方了。如果客户端的浏览器不能在服务器上找到.class文件,它会到客户机的CLASSPATH里面去找。这样一来,就有可能发生,浏览器在服务器上找不到.class文件,因此用你机器上的文件启动了applet的情形了。于是在你看来一切都很正常,而其他人则什么都看不见了。所以测试之前,一定要把本地的.class文件(或.jar文件)全部删了,只有这样才能知道程序是不是呆在正确的服务器目录里。给applet标记的CODE参数赋值的时候,一定要给全名,这一点非常重要.



本文转自Phinecos(洞庭散人)博客园博客,原文链接:http://www.cnblogs.com/phinecos/archive/2006/05/28/411447.html,如需转载请自行联系原作者
目录
相关文章
|
设计模式 敏捷开发 Java
全网首发!Java界的四大名著之一:Java编程思想最新中文版已开源
老版《Java编程思想》(原书名《Thinking in Java》)得益作者开放深度研讨的创作方式,受到了全世界读者的追捧,被译为了十几种语言。但遗憾的是,在经历了 4 个版本的更新后,其最后一版发布于 2007 年,之后再无更新。
|
存储 安全 Java
小白聊《JAVA编程思想》-一切都是对象(一)
小白聊《JAVA编程思想》-一切都是对象(一)
71 0
|
Java
Java编程思想(面向对象)第四版PDF分享
探索《Java编程思想》第四版,理解Java不仅是特性集合,更是解决问题的强大工具。本书深入设计层面,构建编程思维模型,助你逐步精通Java。[阅读更多](https://zhangfeidezhu.com/?p=355) ![Java编程思想](https://ucc.alicdn.com/pic/developer-ecology/nrw3f3oqlpmag_c8ff959a921545f1bbabcefd37f029cf.png)
133 1
Java编程思想(面向对象)第四版PDF分享
|
Java C++
java 编程思想 多线程学习笔记
java 编程思想 多线程学习笔记
182 0
|
存储 Java 容器
小白聊《JAVA编程思想》-对象导论二
小白聊《JAVA编程思想》-对象导论二
73 0
|
存储 Java 数据安全/隐私保护
小白聊《JAVA编程思想》 对象导论一
小白聊《JAVA编程思想》 对象导论一
79 0
|
设计模式 安全 Java
Java编程思想重点开发必看
Java编程思想重点开发必看
75 0
|
设计模式 Java 程序员
《On Java 8》中文版,又名《Java 编程思想》中文第五版
《On Java 8》中文版,又名《Java 编程思想》中文第五版
467 0
|
设计模式 Java 程序员
感动哭了!Java界的四大名著之一:Java编程思想最新中文版已开源
还记得这本书吗?是不是已经在你的桌上铺满厚厚的一层灰了?随着 Java 8 的出现,这门语言在许多地方发生了翻天覆地的变化。最新版已经出来了,在新的版本中,代码的运用和实现上与以往不尽相同。
|
Java 测试技术 API
读书笔记-Spring中更好的Java泛型操作API-ResolvableType
读书笔记-Spring中更好的Java泛型操作API-ResolvableType
213 0

热门文章

最新文章