Java、Java Applet与 JavaScript间的通信

JS使用WebSocket实现与Java图形界面(swing)进行通信 JS使用WebSocket实现与Java原生图形界面(swing)进行通信,以下为源码,介绍在这个地址里面,https://blog.youkuaiyun.com/qq_21891743/article/details/82665510。 立即下载
摘 要:本文着重阐述了网页开发中,通过灵活使用从JavaScript语言中访问Java的方法、从JavaScript中访问JavaScript小程序的方法与变量,以及在Java Applet小程序中使用JavaScript等技术,实现这几种网页开发语言的互相补充,以开发更完美的Web应用程序。 
 
 
JavaScript是用于HTML环境的开发语言,提供了能够响应Web页面事件的脚本,可以完全访问浏览器窗口的各个方面,善于合并HTML、Java Applet小程序、插入件、服务器方程序和其他Web组件,形成完全集成的Web应用程序。而Java是功能强大的著名开发语言,能够支持Web应用程序的开发,用于开发高级Web对象,并提供实现嵌入Web页面的可执行内容,具有更强的编程功能,可以作为JavaScript功能的良好补充,只不过这些功能被限制在有限的浏览器窗口区中。 
Java与JavaScript可以互相补充,以开发功能更完美的Web应用程序。本文归纳了笔者编程中曾使用过的,涉及到有关JavaScript与Java、Java Applet小程序之间互访的问题的一些方法,仅供参考。 
一、从JavaScript中访问Java方法  
在HTML脚本中可以用JavaScript直接调用Java中的方法,只需要在调用语句前用“java.lang.”加以表示即可。具体语句用法如下例所示: 
java.Lang.System.Out.println(“Hello!”) 
但此种方法只适用于Netscape Navigator,一般不提倡在Web应用程序中使用。 
二、从JavaScript中访问Java Applet小程序中的方法和变量 
通过JavaScript提供的Applet对象,JavaScript代码可以访问Java的变量和方法,具体步骤和用法示例如下。需要注意的是,JavaScript提供的applet对象具有name属性,而没有方法和事件处理器。 
步骤: 
1) 将要访问的Java Applet小程序的方法和变量声明为Public,且必须在Public类中声明; 
2) Java Applet小程序要先装入才能访问,尽管applet对象没有定义onLoad事件,但可以在HTML文档的〈body〉标志中,指定使用Window对象的onLoad事件处理器; 
3) Java Applet小程序可以用JavaScript的applet对象来访问。 
示例: 
“mytest.htm” 
<html> 
<head> 
<script language="JavaScript"> 
function accessApplet() 
{ setTimeout("changeText('I like JavaScript!')",1000); 
setTimeout("changeText('I like JavaScript and Java!')",2000); 
setTimeout("changeText('I like Java!')",3000); 
setTimeout("accessApplet()",4000); 
} 
function changeText(s) 
{ 
window.document.testText.setText(s)  
//此处调用JavaApplet小程序的setText()方法 
//注意,小程序的名字必须为〈applet〉标志 name属性所标识 
} 
</script> 
</head> 
<body onload="accessApplet()">  
//通过调用accessApplet()装入小程序 
<applet code="Testtext.class" name="testText" width=450 height=150> 
</applet> 
</body> 
</html> 
“Testtext.java” 
import java.applet.*; 
…… 
public class Testtext extends Applet 
{ …… 
public void setText(String s) //setText()必须声明为“public” 
{ 
text=s; 
repaint(); 
} 
} 
三、在Java Applet小程序中使用JavaScript 
Live Connect提供了Java与JavaScript的接口,可以允许在Java Applet小程序中使用JavaScript。具体步骤如下: 
1) 在HTML脚本中使用〈APPLET〉标志的MAYSCRIPT属性,以允许Java Applet小程序访问脚本; 
2) 将netscape. JavaScript包导入Java Applet小程序; 
3) 在Java Applet小程序中用JSObject类的getWindow( 方法创建JavaScript窗口的句柄; 
4) 在Java Applet小程序中用JSObject类的getMember( 方法访问JavaScript对象; 
5) 在Java Applet小程序中用JSObject类的eval( 方法调用JavaScript方法。 
示例: 
“ReadForm. Java” 
import netscape.javascript.JSObject; 
import netscape.javascript.JSException;  
…… 
win=JSObject.getWindow(this); // 获取JavaScript窗口句柄,引用当前文档窗口 
doc=(JSObject)win.getMember("document"); // 访问JavaScript对象 
form=(JSObject)doc.getMember("textForm"); 
textField=(JSObject)form.getMember("textField"); 
text=(String) textField.getMember("value"); //获取文本区的值 
…… 
win.eval("alert(/"This alert comes from Java!/")"); 
// 调用JavaScript的alert()方法 
…… 
“User.htm” 
…… 
<BODY> 
<form name="textForm"> 
<P>Enter text and then click display text: 
<input type="text" name="textField" size="20"></P> 
</FORM> 
<applet code="ReadForm.class" width=200 height=100 name="readApp" MAYSCRIPT> 
//必须使用MAYSCRIPT属性标志 
</APPLET> 
</BODY> 
 
[img:43579d3303]http://www.ccw.com.cn/htm/app/aprog/01_9_7_3a.jpg[/img:43579d3303]


附表列举了JSObject类的方法和描述,更详细的说明可以参考MSDN。值得一提的是,本文中程序示例加下划线的部分,要特别引起注意。
Java与Java+Applet和JavaScript间的混编方法 过灵活使用从JavaScript语言中访问Java的方法、从JavaScript中访问JavaScript小程序 的方法与变量,以及在Java Applet小程序中使用JavaScript等技术,实现这几种网页开发语言的 互相补充,以开发更完美的Web应用程序。 立即下载

相关推荐

SIMPLIS实战:从零构建理想BUCK电路,精准计算与POP稳态分析

本文详细介绍了如何使用SIMPLIS软件从零开始构建并仿真一个理想的BUCK降压电路。通过设定关键参数、计算理想器件值,并搭建仿真模型,文章重点演示了暂态仿真以观察电路上电过程,并深入讲解了高效的POP(周期性工作点)稳态分析技术,帮助工程师快速验证设计、评估稳态性能,从而加速电源设计迭代。

weixin_29165465的博客 391

java applet js_javascript与applet之间相互通讯

javascript与applet之间相互通讯javascript与applet之间能够相互通讯给我们带来了很多方便,Java与JavaScript互相补充,以开发功能更完美的Web应用程序。B/S下能够充分利用java的优势,给我们带来更多的网络体验,方便用户。我用的比较多的是利用Swing组件开发的应用程序利用applet实现B/s下架构,这样能够充分显示Swing组件的优势,便于系统升级,便...

weixin_28731223的博客 324

BIDS数据存储格式介绍与dcm2bids安装与使用

BIDS格式&dcm2bids安装与使用

machinelearning_er的博客 7308

Java、Java Applet与 JavaScript

JavaScript是用于HTML环境的开发语言,提供了能够响应Web页面事件的脚本,可以完全访问浏览器窗口的各个方面,善于合并HTML、Java Applet小程序、插入件、服务器方程序和其他Web组件,形成完全集成的Web应用程序。而Java是功能强大的著名开发语言,能够支持Web应用程序的开发,用于开发高级Web对象,并提供实现嵌入Web页面的可执行内容,具有更强的编程功能,可以作为Java

简简单单,平平淡淡 1418

嵌入式开发也玩“全家桶”?手把手教你用CLion+PyOCD调试APM32,比OpenOCD更简单

本文详细介绍了如何使用CLion和PyOCD组合进行APM32嵌入式开发,提供从环境配置到实战调试的完整指南。相比传统工具如Keil和OpenOCD,这套方案更轻量、易用,特别适合现代开发者需求,涵盖CMake配置、PyOCD调试技巧及常见问题解决。

weixin_42543046的博客 463

Python Opencv cv2提取图像中某种特定颜色区域(例如黑字白纸背景下的红色公章提取),并将纯色背景透明化

拜拜PHOTOSHOP- 领导突然让我帮他把公章从图片中抠出来,在确保了不是要做坏事的情况下,我打开了PHOTOSHOP,用魔棒工具一点一点抠,但由于魔棒工具的原理是对比临近区域像素差值,导致封闭字体中的区域无法剔除,而且一点一点抠非常麻烦,愤而PYTHON,使用CV2完美解决。 效果如下(马赛克是我添加的): 任务就是把蓝色的公章抠出来。 效果如上。 代码如下: import cv2 import numpy as np src = cv2.imread(r"imagepath")#这里填你的原图像路

qq_43670549的博客 1万+

javascript和java applet互相调用

http://blog.sina.com.cn/s/blog_487bc31b0100wvha.html Java、Java Applet与JavaScript间的通信-JSP教程,Java技巧及代码 (http://cnc.sudu.cn/info/html/edu/20071227/52151.html)     文一,javascript和javaapplet互相调用   一

crazy_fire 2574

INCA刷写App文件必看:A2l文件配置与ProF文件安装详解(2023最新版)

本文深入解析了使用INCA进行ECU应用程序刷写时,A2l文件配置与ProF文件安装的关键细节与避坑指南。重点阐述了A2l文件必须与待刷写二进制文件严格匹配的核心逻辑,以及ProF文件与Bootloader版本强相关的安装策略,帮助开发者解决刷写过程中的常见失败问题,确保刷写流程的稳定与可靠。

milk8的博客 590

Java Applet与 JavaScript间的通信 applet js

<br />最近项目中用到applet看见下面的文章很受启发.<br />摘 要:本文着重阐述了网页开发中,通过灵活使用从JavaScript语言中访问Java的方法、从JavaScript中访问JavaScript小程序的方法与变量,以及在Java Applet小程序中使用JavaScript等技术,实现这几种网页开发语言的互相补充,以开发更完美的Web应用程序。  JavaScript是用于HTML环境的开发语言,提供了能够响应Web页面事件的脚本,可以完全访问浏览器窗口的各个方面,善于合并HTML、J

dqswuyundong的专栏 3673

【PADS-开发指南】

馒头破戒大师

sinat_23896491的博客 3211

AI Agent ReAct架构设计模型剖析

ReAct通过"思考-行动-观察"循环运作:智能体先进行自然语言推理,再调用外部工具执行行动,观察结果后继续推理直至解决问题。这种架构提高了透明度和准确性,减少幻觉风险,使LLM能主动分解任务并利用外部数据源。实现关键在于精心设计的提示模板,引导LLM按结构化格式响应,而非依赖模型固有能力。

weixin_43939320的博客 1249

Java、Java Applet与 JavaScript间的通信 (转)

Java、Java Applet与 JavaScript间的通信 (转)[@more@] Java、Java Applet与 Javascript间的通信摘 要:本文着重阐述了网页开发中,通过灵活使用从JavaScript语言...

csd3176的博客 95

Claude桌面端安装失败?Retrying无限重试终极解决方案(亲测有效)

Claude桌面端安装卡在Retrying并非网络问题,而是安装器下载源异常导致。本文提供已验证方案:一条命令即可解决问题🚀

XiaoqiangClub的博客 2330

java Applet与 JavaScript间的通信(一)

一、从JavaScript中访问Java方法 在HTML脚本中可以用JavaScript直接调用Java中的方法,只需要在调用语句前用“java.lang.”加以表示即可。具体语句用法如下例所示: java.Lang.System.Out.println(“Hello!”) 但此种方法只适用于Netscape Navigator,一般不提倡在Web应用程序中使用。 二、从Java...

xiasys001的专栏 202

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

上一篇: 关于在applet中使用JDBC访问数据库的一点总结
下一篇: JSP/Servlet 中的汉字编码问题
wangxd
博客等级 码龄26年 4粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值