- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
串口做成插件嵌入网页
串口做成Applet嵌入网页的方法由于公司要在车间实现无图化生产,车间安装触摸屏进行电子查图。登陆界面想通过读卡器直接读卡号,读卡器通过串口通信,所以要用到串口的读取。另外由于公司内网还是很老的asp网页,要嵌入网页只能通过插件,于是用java来做的话只能通过B/S模式的Applet来实现。如果网站是java环境,建议还是用serverlet来做,或者SSH等。第一步,用java实现读串口:这里用到java的Comm.jar包,这是一个标准包的扩展。将Comm.jar下载下来后win32com.dll文件放到jre的bin下面,系统的System32下面(之所以放到System32下面是应为为了Applet能调用);perties文件放到jre的lib下面;comm.jar文件放到jre的lib\ext下面Comm.jar的类简介首先,简述一下Comm.jar包的关键类:Comm.jar包的类分三层,顶层,底层和驱动层。顶层用来管理端口或所有端口的抽象类,属于不和具体物理对象挂钩的一类。比如:CommPortIdentifier,CommPort。底层实现了实际物理端口,比如:SerialPort,ParallelPortComm.jar读串口的实现然后,讲解下具体的使用方式,这是重点:1、应用CommPortIdentifier类获得所有的串口数据,这里CommPortIdentifier将与驱动通信,得到所有可用端口。程序中直接调用静态方法getPortIdentifiers()。将返回一个枚举对象。2、应用CommPortIdentifier对象,打开一个端口。程序中用open方法,返回CommPort对象或者其子类对象(比如SerialPort,ParallelPort)3、通过底层的SerialPort,ParallelPort类设置相应的参数,程序中应用setSerialPortParams方法。该方法中有4各参数,分别是波特率,数据位,停止位,奇偶检验。4、设置事件监听,先介绍下这里的事件监听。监听需要一个listener对象来进行监听(属于EventListener类,拥有相关的底层子类,如SerialPortEventListener),通过实现抽象方法serialEvent(SerialPortEventev)来经行监听。该类中自带了很多事件,如这里要用到的DATA_AVAILABLE事件。另外,每个串口只允许一个listener。serialEvent的调用,该方法是通过notifyOnxxx方法进行自动调用的。比如notifyOnDataAvailable(Boolean isAvaliable)。最后事件监听过程需要属于listener对象的一个线程的支持。按照以上所述写程序即可。5、数据的读出,需要用到SerialPort,ParallelPort类中的getInputStream方法得到输入流。值得注意的是,port打开后,直到关闭前getInputStream方法将返回同一个输入流对象。第二步,实现Applet(难点所在)Applet简介先介绍下Applet。Applet有五个函数:public void init() {},public void start() {},public void stop() {},public void destroy() {},public void run() {},public void paint(Graphics g) {}。第一次打开网页的时候,将自动调用init()方法(init可做一些初始化操作),init()调用后将自动调用start()方法和paint(Graphics g)方法,刷新时也将自动重新调用paint()方法,当最小化等不显示Applet时,将自动调用stop()方法。当关闭网页时将调用destroy()方法,该方法将自动调用stop()方法。要连续进行Applet的操作,需要有线程的支持。通过安全监测写完Applet后,接下来就是将Applet嵌入网页(难点所在)。由于是B/S模式,所以安全性是被首先考虑的,因此要想办法通过安全检测。这里用到数字签名的方法。将相应的程序打包成jar包后,在当前目录下通过cmd运行以下语句keytool -genkey -dname cn=BeanSoft Studio, ou=Java Software, o=BeanSoft Studio, c=China -alias beansoft -keypassbeansoft -storepassbeansoft -validity 365 -keystore .\beansoft其中-alias是指定数字签名名称的命令,-keypass是设定密码
您可能关注的文档
最近下载
- synopsys学习资料-dw_debugger.pdf VIP
- 人体形态与结构课程标准.docx VIP
- 压力管道日管控、周排 查、月调度工作制度.pdf VIP
- 马工程《世界经济概论》(第二版)教学课件第十五章.pptx VIP
- 同济大学临床医学专业五年制培养方案.docx VIP
- SPMP-STD-EM2004-2016石油化工工厂基础工程设计内容规定.pdf VIP
- GBT28046.4_道路车辆电气及电子设备的环境条件和试验第4部分气候负荷.docx VIP
- 华为任职资格全套——任职资格体系胶片.ppt VIP
- 从《兰亭集序》浅析魏晋士人自觉意识苏醒.doc VIP
- 第6课第二次世界大战的爆发教案.docx VIP
文档评论(0)