jacob调用中控考勤机事件监听实现
其他接口都可以正常调用,就事件监听一直没能成功,今天试了下成功监听到打卡机的事件消息,可以实现实时打卡,以下是几个关键的代码
事件类SensorEvents .java
public class SensorEvents {public void OnConnected(Variant[] arge){System.out.println("当成功连接机器时触发该事件,无返回值====");}public void OnDisConnected(Variant[] arge){System.out.println("当断开机器时触发该事件,无返回值====");}public void OnAlarm(Variant[] arge){System.out.println("当机器报警时触发该事件===="+arge);}public void OnAttTransactionEx(Variant[] arge){System.out.println("id:"+arge[0]);System.out.println("是否有效:0有效 1无效"+arge[1]);System.out.println("考勤状态:0 上班 1下班 2外出 3外出返回 4 加班签到 5 加班签退...."+arge[2]);System.out.println("验证方式 0:密码 1;指纹 15:刷脸认证"+arge[3]);System.out.println("验证时间"+arge[4]+"-"+arge[5]+"-"+arge[6]+"-"+arge[7]+":"+arge[8]+":"+arge[9]+" "+arge[10]);/*for (int i = 0; i < arge.length; i++) {System.out.println(arge[i]);}*///System.out.println(arge.toString());System.out.println("当验证通过时触发该事件====**"+arge);}public void OnEnrollFingerEx(Variant[] arge){System.out.println("登记指纹时触发该事件===="+arge.clone());}public void OnFinger(Variant[] arge){System.out.println("当机器上指纹头上检测到有指纹时触发该消息,无返回值");}public void OnFingerFeature(Variant[] arge){System.out.println("登记用户指纹时,当有指纹按下时触发该消息===="+arge);}public void OnHIDNum(Variant[] arge){System.out.println("当刷卡时触发该消息===="+arge);}public void OnNewUser(Variant[] arge){System.out.println("当成功登记新用户时触发该消息===="+arge);}public void OnVerify(Variant[] arge){System.out.println("当用户验证时触发该消息===="+arge);}public void OnWriteCard(Variant[] arge){System.out.println("当机器进行写卡操作时触发该事件===="+arge);}public void OnEmptyCard(Variant[] arge){System.out.println("当清空 MIFARE 卡操作时触发该事件===="+arge);}public void OnEMData(Variant[] arge){System.out.println("当机器向 SDK 发送未知事件时,触发该事件===="+arge);}}
监听的接口方法,跟其他方法一样,关键在于DispatchEvents
/*** 启动事件监听*/public void regEvent(){zkem.invoke("RegEvent", new Variant(1), new Variant(65535));zkem.invoke("ReadRTLog", new Variant(1));zkem.invoke("GetRTLog", new Variant(1));new DispatchEvents(zkem.getObject(), new SensorEvents());
// new STA().doMessagePump();logger.info(machine.getMachinealias()+"->开始事件监听");
// new STA().doMessagePump();}
这里放一下其他部分关键代码,这里是从项目摘录,需要你们自己整理一下,纯原创
打卡机操作关键代码下载
jacob调用中控考勤机事件监听实现相关推荐
- java 使用jacob 调用中控考勤机dll(详细配置)
根据网上内容搜索以及不断尝试,总结出以下java使用jacob调用中控考勤机sdk方法 1.jacob-1.18版本 2.jdk1.732位(经过测试jacob目前只支持32位jdk,64位下报错): ...
- spring 事件监听
用一个简单的例子来实现spring事件监听的功能 这个例子主要功能是,记录那些用户是第一次登入系统,如果用户是第一次登入系统,则调用spring的事件监听,记录这些用户. 主要用到的spring的类和 ...
- Spring之事件监听
spring的监听事件模型应该是观察者模式.本人项目里的应用在process方法按日期同步某个库的数据,在方法最后publish一个event事件,这个事件用于后续同步过来的数据处理.事件处理采用了s ...
- Springboot事件监听机制:工作原理
目录 前言 1.观察者模式 1.1观察者模式的核心元素 1.2观察者模式的工作流程 2.springboot事件监听机制的基本工作原理 2.1事件发布器是什么时候在哪里产生的呢? 2.2事件监听器是什 ...
- 从jQuery的缓存到事件监听
很久以前,我还在cnblogs里面逛的时候就提出过一个问题(刚找了半天没找到).不知道大家有没有发现,用jQuery选择器"选择"之后的DOM上会添加jQuery********* ...
- java中事件监听_Java中的事件监听机制
鼠标事件监听机制的三个方面: 1.事件源对象: 事件源对象就是能够产生动作的对象.在Java语言中所有的容器组件和元素组件都是事件监听中的事件源对象.Java中根据事件的动作来区分不同的事件源对象,动 ...
- Java中事件监听机制
Java中事件监听机制 一.事件监听机制的定义 要想了解Java中的事件监听机制,首先就要去了解一下在Java中事件是怎样去定义的呢!在使用Java编写好一个界面后,我们就会对界面进行一些操作,比如, ...
- chromedp网络监听_动态爬虫三:监听网络事件 + 监听js事件
一: 概述 上两篇文章介绍了cdp协议和chromedp库,从这篇文章开始动手实战一下,我们要拿到页面上更多的网络请求,最直接的想法就是类似于开发者工具里的network,只有一有网络请求就显示在列表 ...
- Vue 模板语法 插值操作 绑定属性 计算属性 事件监听 条件判断 循环遍历 阶段案例
1 插值操作 1.1 Mustache语法 也就是双大括号 {{ }} <div id="app"> <!-- mustche语法中,不仅可以直接写变量,也可以写 ...
最新文章
- 自动化测试8大元素定位之xpath语法
- Android开发工具之Android Studio---如何打JAR包
- linux shell 脚本 supress,《linux Shell 脚本攻略》进阶学习(第一部分)
- 二、saltstack基础配置
- C# 中返回星期的函数
- ios android 性能测试工具,史上最全的 iOS 各种测试工具集锦
- java docx转pdf_在java中将docx转换为pdf
- Final关键字修饰的变量是否真的不能改变吗
- 【转】通过VIOS实现AIX系统的网络虚拟化
- 北京编程女子图鉴,谁说女子不如男
- mysql占用内存过高_MySQL内存消耗过高问题处理
- 创意=流量!“蔡徐坤”被“鸡你太美” 这款游戏蹭量霸榜!
- 一文详说idea创建自定义的xml文件,比如创建mybatisConfig.xml等
- harmonyOS系统是安卓,HarmonyOS华为操作系统
- java腾讯滤镜接口_文档中心
- Vegas使用技巧—— 如何实现三维立体调整?
- 虚拟化 半虚拟化 全虚拟化_我的虚拟实习经历
- 用Java计算二月份有多少天
- 数据结构之数组与广义表
- 7-1 程序改错题2 (6分)