Java Applet RIA开发入门

曾几何时,Java靠着Applet成为一门炙手可热的编程语言.作为Swing框架的延伸,Java Applet可以很方便地嵌入到网页中,并且早期的HTML 4也为Applet专门设计了一个标签.Java Applet是早期的RIA技术,为网页带来了丰富的交互功能,只需要一个Java插件就可以跨平台查看.但后来随着JavaFX,Apache Pivot等新的Java RIA开发框架的兴起,以及HTML 5的出现,Java Applet开始没落.最新的Java也去除了Java Applet支持.尽管如此,我们还是可以用Java Applet写一些小游戏,以及科学计算的模拟程序,用来练习上手Java.这篇文章将介绍Java Applet开发的一些要点,以及相关框架.

早期HTML和HTML 5如何嵌入Applet?

上面提到了,早期的HTML有一个专门的Applet框架,可以用下面的方式嵌入:

其中code是Applet的类名,archive是Applet编译后形成的jar文件,你还可以通过height和width设置高和宽.标签内设置如果没有Java插件不能显示Applet的错误信息.

到了HTML 5时代,Applet热度已减,因此HTML 5把Applet并入到标签中,你可以通过以下方式嵌入Applet:

当然原理是类似的,这里就不再赘述了.

推荐一些Java Applet教程

英文教程

Java-Tutorial.com Applet教程(http://www.java-tutorial.com/applets/)

EchoEcho Applet教程(http://www.echoecho.com/applets.htm)

HajSoftTutorial Applet教程(https://hajsoftutorial.com/category/java-applets/)

SitesBay Applet教程(https://www.sitesbay.com/java/java-applet)

中文教程

编程入门网Applet教程(http://www.bianceng.cn/Programming/Java/Applet_1.htm)

Java Applet可以用哪些编程语言编写?

Java Applet除了可以用Java编写外,支持JVM的编程语言和编译到Java的编程语言都可以编写Java Applet.列举如下:

Haxe(http://old.haxe.org/doc/java/graphics2d)

Jython(http://www.jython.org/archive/21/applets/index.html)

JRuby(https://stackoverflow.com/questions/1197812/is-it-possible-to-use-jruby-to-write-an-applet-or-is-it-better-to-use-iron-ruby)

FreePascal(http://wiki.freepascal.org/FPC_JVM)

Scala(https://www.scala-lang.org/old/node/714.html)

Groovy(http://www536.pair.com/bgw/applets/GroovyDemo/)

SmartEiffel(http://eiffelzone.com/esd/wrapj/)

将Java Applet和JNLP以及IcedTea-Web整合

JNLP和IcedTea-Web都是一种部署Java应用到浏览器的技术.除了Java Applet,JNLP还可以部署JavaFX等应用.JNLP将Java Applet应用放在沙箱中应用,可以跨平台查看.IcedTea-Web是基于OpenJDK的JNLP开源实现.

整合Java Applet和JNLP(https://docs.oracle.com/javase/tutorial/deployment/deploymentInDepth/embeddingJNLPFileInWebPage.html)

关于IcedTea-Web(https://icedtea.classpath.org/wiki/IcedTea-Web)

基于Swing的Java Applet

从Java 1.3起,可以在Java Applet中使用Swing组件.之前一直只能用AWT组件.推荐两个在Java Applet中使用Swing的教程:

A simple Swing-based applet(http://www.java2s.com/Tutorial/Java/0120__Development/AsimpleSwingbasedapplet.htm)

Applet and Swing Components(http://www.java2s.com/Code/Java/Swing-JFC/AppletandSwingComponents.htm)

可以和Java Applet整合使用的Java库和框架

Barcode4j(http://barcode4j.sourceforge.net/) - 用来生成条形码.

Jung(http://jung.sourceforge.net/applet/) - Java图论和网络库

Supa(http://supa.sourceforge.net/) - 一个方便上传截图的Java Applet,可以实现截图后(自动保存到剪贴板)直接粘贴上传的功能.

总结

本文介绍了Java Applet相关知识点.Java Applet尽管已经很少使用了,但有兴趣的朋友还是可以用Java Applet练习Java开发.

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180509G1XJU600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券