- 1、本文档共82页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 Java applet 本节主要内容 概述 编写applet 绘图 加载数据 applet高级功能 编写applet和应用程序都支持的代码 9.1 概述 applet是Java小应用程序,可以在appletviewer(Java开发环境提供的applet运行环境)或Web浏览器内执行。applet源文件的扩展名和Java应用程序相同,都是.java,编译过的applet也是扩展名为.class的类文件,区别在于该类文件通常需要在浏览器中执行。 applet小应用程序的实现依赖于java.applet包中的Applet类(或基于Swing技术的javax.swing.JApplet类),不同于一般应用程序,必须把它嵌入在HTML页面中才能被浏览器解释并执行,使用它能够产生特殊的效果,而且applet可以从Web页面中获得参数,大大提高了Web交互能力和动态执行能力。 9.1 概述 含有applet的网页中必须带有Applet标记,当支持Java的浏览器遇到该标记时,就会下载相应的applet代码并在本地计算机上执行。因此网页中的Applet标记应提供相应的信息,至少应包含以下三点:①.字节码文件名(编译后的Java文件,以.class为后缀);②.字节码文件的地址(文件的位置);③.在网页上显示applet的方式(大小等的控制)。这样,浏览器就可以找到想要下载的applet代码并按指定的方式运行。 HTML增加applet有关的内容能够使网页更加富有生气,如添加声音、动画等吸引人的特征,但并不会改变HTML中与applet无关的元素。 9.1.1 applet的工作流程 applet在执行前会通过网络下载到客户机,只要客户机浏览器内安装适当的Java虚拟机,即可以执行下载的applet。 applet的基本工作流程(如图1所示)如下: (1) 客户机向Web服务器发出访问一个网页的请求; (2) Web服务器接到请求后进行相应的处理,若客户机请求的网页资源存在,就返回给用户,否则告诉用户相关资源不存在; (3) 客户机接收到Web服务器的应答,打开收到的网页并显示,如果在网页中嵌入了Applet标记时,会启动Java虚拟机(JVM),发出类加载要求,客户机向Web服务器请求applet字节码文件; (4) Web服务器响应类加载请求,将applet传送给客户机,然后由客户机的JVM的类加载器(ClassLoader)加载; (5) 在类加载时会检查欲加载的类是否合法,以保证加载的代码符合JVM规范,只有合法的applet代码,才会被解释器执行。 9.1.1 applet的工作流程 9.1.2 applet的安全机制 由于applet需要通过网络传播,并要在请求访问该applet的机器上执行,所以一定要对applet的执行加以限制。Java的SecurityManager类专门用来防止安全漏洞的出现,能监控几乎所有的虚拟机上的系统级调用,这种安全防范机制称为沙箱(sandbox)安全模型。Java安全模型的重点在于保护最终用户不受从网上下载的破坏性程序的干扰。为达到这个目的,Java提供了专用的运行Java程序的沙箱,Java程序在沙箱内可做任何事情,但在边界外就不能有任何操作。 9.1.2 applet的安全机制 通常运行applet程序的浏览器安全策略如下: (1) applet不能访问内存中的任何地址,这是Java语言自身和字节码检验器的特性。 (2) applet不能以任何方式访问本地文件系统。applet不能从本地文件系统读写文件,也不能寻找任何与文件有关的信息,因此,applet不能发现文件是否存在或修改的日期是多少。 (3) applet不能运行客户机上的其他程序。例如,applet不能调用System.exe( )方法或Runtime.exec( )方法。 (4) applet不能加载本地库或调用本地操作。 (5) applet禁止以获取有关用户或机器信息为目的的系统属性调用,但可使用System.getProperty( )方法获取Java的版本信息。 (6) applet不能定义任何系统属性。 9.1.2 applet的安全机制 (7) applet不能创建或处理不在其ThreadGroup中的任何Thread或ThreadGroup。 (8) applet不能定义或使用ClassLoader、SecurityManager、ContentHandlerFactory、SocketImplFactory、URLStreamHandlerFactory的新实例,只能使用已创建的实例。 (9) applet仅能打开与其最初驻留的主机间的连接,从该主机下载applet,不能与其他位于“网络
您可能关注的文档
- 济南市2011年生物学考报告分析.ppt
- 法律在公民生活中的作用 .ppt
- 漏磁检测标准及应用(课件).ppt
- 灵思企划北京现代项目依兰特上市暨品牌传播策划案(40页).ppt
- 状告律师事务所案例分析.ppt
- 狭义相对论的基本原理洛伦兹变换 (2).ppt
- 现代管理学案例分析.ppt
- 班主任工作中如何.ppt
- 生产过程品质改善报告...ppt
- 用读数显微镜观察牛顿环-F.ppt
- 译林版(2024)七年级上册Unit 3 Welcome to our school!复习学案 354.docx
- 黑龙江省齐齐哈尔市富裕县第一中学2024-2025学年八年级上学期10月月考历史试题(含答案).docx
- 沪教版(2024)七年级上册Peter Pan(Post reading)第三课时课件(共21张PPT).pptx
- 外研版七年级上册英语Module 4 Unit 1 We've got lots of apples.教案.docx
- 吉林省长春市东北师范大学附属中学2024-2025学年高二上学期10月期中考试生物试题(扫描版无答案).docx
- 云南省昆明市云南师范大学附属中学2024-2025学年高一上学期期中教学测评历史试卷(含答案).docx
- 江苏省淮安市2024年中考语文试题(含解析).docx
- 慢性阻塞性肺疾病诊治指南 (3).ppt
- 外商投资房地产方式、限制及流程 PPT.ppt
- 《小窗幽记》(全文及译文).doc
文档评论(0)