阜南网站建设今天最新的新闻
一、先去官网(support)下载对应的demo
二、将demo中全量文件复制到springboot新建的包下,然后全局替换 com.netsdk. 为 自己建的包名前缀
三、将res下文件复制到resources文件夹下,将libs复制到resources文件夹下
四、将jna.jar通过mvn安装到本地maven库中,然后通过pom引入项目
<dependency><groupId>com.dahua.netsdk</groupId><artifactId>dahua-netsdk-jna</artifactId><version>1.0.0</version></dependency><dependency><groupId>net.java.dev.jna</groupId><artifactId>jna</artifactId><version>5.4.0</version></dependency>
五、win+R输入 %temp%,将下图win64下文件复制到temp文件夹中
六、编写测试代码,默认连接地址:默认ip:192.168.1.108 port 37777
public class Test {public static void main(String[] args) throws InterruptedException {LoginModule.init(new NetSDKLib.fDisConnect() {@Overridepublic void invoke(NetSDKLib.LLong lLoginID, String pchDVRIP, int nDVRPort, Pointer dwUser) {System.out.println(1);}}, new NetSDKLib.fHaveReConnect() {@Overridepublic void invoke(NetSDKLib.LLong lLoginID, String pchDVRIP, int nDVRPort, Pointer dwUser) {System.out.println(2);}});boolean login = LoginModule.login("192.168.1.108", 37777, "admin", "admin123");System.out.println(login);// AttendanceModule.UserData user = AttendanceModule.getUser("006");
// System.out.println(user.userName);AttendanceModule.realLoadPicture(new fAnalyzerDataCB());Thread.sleep(1*60*60*1000);}public static class fAnalyzerDataCB implements NetSDKLib.fAnalyzerDataCallBack {public final EventQueue eventQueue = Toolkit.getDefaultToolkit().getSystemEventQueue();@Overridepublic int invoke(NetSDKLib.LLong lAnalyzerHandle, int dwAlarmType,Pointer pAlarmInfo, Pointer pBuffer, int dwBufSize,Pointer dwUser, int nSequence, Pointer reserved) {if(pAlarmInfo == null) {return 0;}System.out.println("门禁事件回调");switch(dwAlarmType) {case NetSDKLib.EVENT_IVS_ACCESS_CTL: // 门禁事件NetSDKLib.DEV_EVENT_ACCESS_CTL_INFO event = new NetSDKLib.DEV_EVENT_ACCESS_CTL_INFO();ToolKits.GetPointerData(pAlarmInfo, event);System.out.println("门禁事件回调信息");System.out.println("id:"+new String(event.szUserID).trim());System.out.println("卡名:"+new String(event.szCardName).trim());break;default:break;}return 0;}}}