Java中的应用程序可以使用浏览器作为用户接口和传输数据的通道。为了在本地Java程序和浏览器之间进行通信,我们使用Java applet技术和JavaScript编写交互脚本。
Java applet是一种小型Java程序,可以嵌入到HTML页面中,在浏览器中运行。Java applet与其他应用程序一样,可以通过Java网络套接字API建立网络连接。Java applet还可以通过浏览器DOM(文档对象模型)API获取和修改HTML页面的内容。在Java applet和浏览器之间进行通信,我们可以借助JavaScript和Java-Script接口(JSObject)实现。
//在JavaScript中调用Java applet的方法 <applet id="myApplet" code="MyApplet.class" width="400" height="300"></applet> <script> var applet = document.getElementById("myApplet"); applet.myMethod(argument1, argument2); </script> //在Java applet中调用JavaScript方法 import netscape.javascript.JSObject; public void callJavaScript(String functionName, Object[] arguments) { JSObject windowObject = (JSObject) JSObject.getWindow(this); windowObject.call(functionName, arguments); }
需要注意的一点是,Java applet只能在浏览器的受信任区域内运行。由于Java applet被滥用的安全漏洞,现代浏览器已经默认关闭了对Java applet的支持。