基于ARM―Linux与JavaEE网络化门禁考勤系统的设计

上传人:无*** 文档编号:48878277 上传时间:2022-01-15 格式:DOCX 页数:8 大小:44.43KB
返回 下载 相关 举报
基于ARM―Linux与JavaEE网络化门禁考勤系统的设计_第1页
第1页 / 共8页
基于ARM―Linux与JavaEE网络化门禁考勤系统的设计_第2页
第2页 / 共8页
基于ARM―Linux与JavaEE网络化门禁考勤系统的设计_第3页
第3页 / 共8页
点击查看更多>>
资源描述
基于ARMLinux与JavaEE网络化门禁考勤系统的设计摘要:提出了一种网络化门禁考勤系统的设计方案,由门禁考勤机和后台服务器通过网络连接构成。门禁考勤机以ARM处理器为核心,连接RFID读卡器、摄像头、LCD显示屏、门禁控制器等构成硬件系统,移植Linux作为嵌入式操作系统;采用JavaEE技术实现后台服务接口,部署在后台服务器安装的Tomcat中;利用数据库和FTP文件传输保存门禁考勤信息记录;整体架构设计扩展性较好,现有的人事管理系统经过少量的二次开发便可与本方案进行集成。关键词:门禁考勤系统;嵌入式Linux ; JavaEE;后台服务接口;数据库中图分类二TP316文献标识码:A文章编号:1009-3044(2014)13-2967-04DesignofNetworkedAccessControlandAttendanceSystemBasedonARM-LinuxandJavaEEFANGHao-shuai,LIZhi-peng,ZHENGZhe-hao,WANGChun-JingDepartmentofComputerScienceandEngineering,NorthChinaInstituteofAerospaceEngineering,Langfang065000,China)Abstract:Proposesadesignproposalofnetworkedaccesscontrolandattendancesystem,includesaccesscontrolandattendanceclientsconnectservervianetwork.ThehardwareofaccesscontrolandattendanceclientconsistsofARMasthecoreprocessor,connectstheRFIDcardreader,camera,LCDandaccesscontroller.DevelopstheserviceinterfacesusingJavaEEtechnology,andthendeployedinTomcatwhichtheserverhasinstalled.TheaccesscontrolattendancerecordinformationcansavedindatabaseandbyFTPfiletransferring.Theoverallarchitectureofthisdesignhasapreferableexpansibility,onlyafterafewsecondarydevelopments,existingpersonnelmanagementsystemscanbeintegratedwiththedesignproposal.Keywords:Accesscontrolandattendancesystem;EmbeddedLinux;JavaEE;serviceinterface;database1门禁考勤系统的现状及发展趋势门禁考勤系统主要应用于人员进出控制与授权,同时与人事管理系统集成、机电设备控制等联动,实现自动化身份识别与信息统计。市场上已有产品对于人员身份识别的方式目前有密码、RFID卡、生物特征识别3种,有些产品同时支持多种方式。就工作时的联接方式而言,已经从最初的单机门禁考勤系统逐渐向联机、网络化门禁系统发展,也出现了一些网络化的解决方案,但这些方案普遍没有考虑基于当前已有系统进行整合或二次开发,授权方式不够灵活,与人事管理系统结合才能更有效的发挥其作用。本文提出一种基于嵌入式ARM-Linux和JavaEE技术的设计与实现方案,后台服务接口可在人事管理系统的基础上采用JavaEE进行二次开发,门禁考勤机通过Http协议与后台进行通信,实现分布式的网络化进出控制系统,也有利于人事部门的统一管理和授权。系统开发也充分利用开源操作中间件和第三方库,增强了健壮性同时降低了成本2方案总体设计门禁考勤系统的实现总体流程如图1所示,员工使用RFID刷卡进行身份验证,并拍下刷卡的即时照片,门禁考勤机程序通过Http协议向后台身份验证与信息保存服务接口发出请求,服务器中的服务接口验证身份并保存刷卡信息,返回员工的基本信息和档案照片,门禁考勤机提示刷卡完成,显示基本信息并将即时照片上传到服务器FTP,作为防止代刷证明供人事部门查询。系统技术架构如图2所示,门禁考勤机采用ARM处理器扩展多种外设构成硬件系统,软件部分移植bootloader ,交叉编译Linux内核并配置所需硬件驱动程序,文件系统中加入第三方库QtEmbedded、JSONlib、jpeglib,开发门禁考勤终端程序。服务器部分包括后台服务接口部署在WebServer(如Tomcat),采用开源MVC框架Struts,0RM框架Hibernate实现访问数据库,JSONlib进行标准JSON数据格式序列化与反序列化。3后台服务接口的关键技术实现为使用JavaEE开发后台服务接口,采用流行的Struts框架进行设计,代码实现层次划分为 daoaction、 services、三层。实现控制器的action层将POJO类进行配置便可以作为Servlet请求接口,实现如下:1)编写POJO类实现Servlet,其方法作为后台服务接口的实现,主要方法如下:publicclassPersonRecordActionpublicvoidrecordByCard进行身份验证和保存刷卡信息publicvoidsearchRecords按条件查询刷卡信息/其它方法实现在此省略2)在struts,xml的标签内对Servlet实现的POJO类进行配置,将其方法配置为action,主要代码如下:method=/recordByCard/zmethod=/searchRecords/z配置完成之后,将工程打包生成部署文件RecordServices.war,使用Tomcat控制台或直接拷贝至webapp目录下,Tomcat启动后即可自动完成部署。门禁考勤终端程序可以编程访问URL“http:服务器ip:端口号/RecordServices/recordByCard.action”进行请求月艮务接口进彳亍服务,接口中的流程如下:1)获取HttpServletRequest、HttpServletResponse类的实例:HttpServletRequestrequest=ServletActionContext.getRequest();HttpServletResponseresponse=ServletActionContext.getResponse();2) HttpServletRequest解析GET/POST请求提交的参数:Stringparaval=request.getParameter(paraname);3)调用业务逻辑实现的services层,services层的实现需要访问数据库,其底层代码采用流行的0RM数据库访问dao类的方法;POJO 类 ReqRet 实例HttpServletResponse);aret) . toString ();框架Hibernate实现;为了将业务逻辑和数据库访问代码耦合度降低,业务逻辑层调用数据库访问层4)将业务逻辑执行结果封装至aret,使用JSONlib进行序列化,使用类的实例进行结果的返回:PrintWriterout=response.getWriterout.print(JSONObject.fromObject4基于ARM-Linux平台实现门禁考勤机终端4.1ARM-Linux系统平台搭建前期准备工作在Linux系统中移植与交叉编译U-Boot、Linux内核,采用BusyBox制作嵌入式根文件系统。界面的开发采用第三方库Qt4.8,标准数据交换格式采用json-c-0.9,图像格式的转换采用lib-jpeg,这些库都提供开源源代码,编译并加入嵌入式根文件系统的方法如下:1)下载完整的源代码压缩包,解压到有访问权限的目录;2)切换到源代码目录执行./configure?Chelp,显示编译配置项帮助信息;3)执行“./configure+配置项”命令,进行编译前配置,设置交叉编译器设置,安装路径在/usr/local,编译为共享库;4)执行“make命令开始编译,编译完成后执行“makeinstall”将编译后生成的头文件和共享库安装拷贝到Linux安装路径;5)将编译后的共享库拷贝到嵌入式根文件系统;6)将共享库目录添力口至ijLD_LIBRARY_PATH环境变量在嵌入式跟文件系统/etc/profile中修改)。4.2门禁考勤终端程序的实现关键技术4.2.1员工刷卡与门禁控制器串口设备的访问RFID读卡器和门禁控制器通过串口与ARM处理器连接,使用Posix_QextSerialPort类进行串口操作。需要读取RFID读卡器串口数据,在Qt程序中,采用定时器轮询的方法进行读取:1)设定定时器的timeout信号的槽函数为readCardNo():QTimercardserialPortTimer=newQTimerthis);connect(cardserialPortTimer,SIGNALtimeout(),this,SLOT(readCardNo();cardserialPortTimer-start(TIMER_INTERVAL);2)在槽函数readCardNo()中采用Posix_QextSeriaIPort类的方法读取串口,直到读取内容为开始第一个字符为一0x02,最后字符为0x0D0x0A0x03,截取中间的字符作为RFID的卡号。门禁控制器通过RS485总线连接处理器,需要通过串口发送命令字符串进行控制,Posix_QextSeriaIPort类提供了writeData(constchar*data,qint64maxSize)方法进行发送数据。4.2.2即时拍照摄像头设备的访问
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!