《基于二維碼的公安戶口遷移系統(tǒng)的設(shè)計(jì)系統(tǒng)的開發(fā)》由會(huì)員分享,可在線閱讀,更多相關(guān)《基于二維碼的公安戶口遷移系統(tǒng)的設(shè)計(jì)系統(tǒng)的開發(fā)(3頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、基于二維碼的公安戶口遷移系統(tǒng)的設(shè)計(jì)系統(tǒng)的開發(fā)
1 引言
二維碼相對(duì)于條形碼是一種新的編碼方式,具有信息容量大、編碼范圍廣、糾錯(cuò)能力強(qiáng)、自動(dòng)識(shí)別率高和制作成本低等特點(diǎn),其可以被自動(dòng)識(shí)別的特點(diǎn)特別適用于作為信息傳遞的載體。在公安戶口遷移業(yè)務(wù)中,需要將居民的戶口信息由A地遷往B地。傳統(tǒng)的戶口遷移業(yè)務(wù)需要手動(dòng)將居民的戶口信息錄入信息系統(tǒng),不但工作量大而且容易出錯(cuò),本文結(jié)合二維碼適于作為信息傳遞載體的特點(diǎn),設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于二維碼的公安戶口遷移系統(tǒng),旨在提高公安工作的信息化水平。
2 二維碼戶口遷移系統(tǒng)概述
二維碼戶口遷移系統(tǒng)主要包括登錄模塊、用戶管理模塊和戶口遷移模塊。首先用戶
2、需要輸入正確的用戶名和密碼才可以登錄使用二維碼戶口遷移系統(tǒng);當(dāng)用戶進(jìn)入系統(tǒng)后系統(tǒng)會(huì)根據(jù)用戶名自動(dòng)從數(shù)據(jù)庫中查詢用戶的權(quán)限,只有管理員用戶才可以使用用戶管理模塊,普通用戶只能使用戶口遷移模塊;戶口遷移模塊包括戶口遷入模塊和戶口遷出模塊。戶口遷出模塊可以將數(shù)據(jù)庫里戶口信息表中的記錄轉(zhuǎn)化成為二維碼,并通過打印機(jī)打印出帶二維碼的戶口遷移證,戶口遷入模塊可以將帶有二維碼的戶口遷移證上的戶口信息通過二維碼掃描器掃描到數(shù)據(jù)庫的戶口信息表中。其功能模塊如圖1所示。
3 系統(tǒng)開發(fā)技術(shù)方案
二維碼戶口遷移系統(tǒng)采用面向?qū)ο蟮能浖こ趟枷脒M(jìn)行開發(fā),主要涉及到四個(gè)關(guān)鍵技術(shù):(1)對(duì)象持久化,即實(shí)現(xiàn)應(yīng)用程序中
3、的對(duì)象與數(shù)據(jù)庫中的記錄的相互轉(zhuǎn)化;(2)對(duì)象序列化和反序列化,即實(shí)現(xiàn)對(duì)象和數(shù)據(jù)流之間的相互轉(zhuǎn)化;(3)二維碼編碼和解碼,即實(shí)現(xiàn)數(shù)據(jù)流和二維碼之間的相互轉(zhuǎn)化;(4)二維碼打印和掃碼,即將實(shí)現(xiàn)現(xiàn)實(shí)世界中的二維碼圖片和計(jì)算機(jī)內(nèi)存中的二維碼圖像相互轉(zhuǎn)化。
3.1 對(duì)象的持久化
對(duì)象持久化是指將內(nèi)存中的對(duì)象保存到可以長(zhǎng)久保存的存儲(chǔ)媒介中,存儲(chǔ)媒介一般是數(shù)據(jù)庫。居民的戶口信息在數(shù)據(jù)庫中以記錄的形式存在,在應(yīng)用程序中以對(duì)象的形式存在,信息系統(tǒng)開發(fā)需要實(shí)現(xiàn)對(duì)象與記錄的相互轉(zhuǎn)化。.NET平臺(tái)下有多種技術(shù)可以實(shí)現(xiàn)對(duì)象和記錄的相互轉(zhuǎn)化,例如ADO.NET技術(shù)、Entity Framework技術(shù)、NHi
4、bernate技術(shù)等。其中NHibernate技術(shù)相對(duì)于其他技術(shù)擁有多種優(yōu)點(diǎn):首先采用了面向?qū)ο笏枷霝殚_發(fā)人員屏蔽了底層的數(shù)據(jù)庫;其次具有較好的移植性,當(dāng)?shù)讓訑?shù)據(jù)庫需要遷移或升級(jí)時(shí)只需要修改一下配置文件;最后簡(jiǎn)化了程序的開發(fā),縮短了開發(fā)周期,提高了開發(fā)效率。
3.2 對(duì)象的序列化和反序列化
對(duì)象序列化是指將內(nèi)存中的對(duì)象轉(zhuǎn)化數(shù)據(jù)流的過程,對(duì)象反序列化是指將數(shù)據(jù)流化為內(nèi)存中的對(duì)象的過程。對(duì)象序列化與反序列化的作用在于:(1)可以用最小的花銷來保存各種類型的數(shù)據(jù);(2)使內(nèi)存中的對(duì)象可以跨平臺(tái)傳遞。對(duì)象可以采用多種序列化格式,例如可以將對(duì)象序列化為XML格式、SOAP簡(jiǎn)單對(duì)象訪問協(xié)議格式
5、、JSON格式等。由于二維碼編碼是對(duì)字符串的編碼,所以需要先將對(duì)象序列化為內(nèi)存流,然后再將內(nèi)存流轉(zhuǎn)化為二維碼。在進(jìn)行二維碼解碼時(shí)先將二維碼圖片解析為內(nèi)存流,然后再將內(nèi)存流反序列化為對(duì)象。
3.3 二維碼編碼和解碼
現(xiàn)存有多種類型的二維碼,本文采用了QR二維碼技術(shù)來開發(fā)系統(tǒng)。QR二維碼有四級(jí)容錯(cuò)率,最高容錯(cuò)率可達(dá)30%?,F(xiàn)行多種類庫可以用來對(duì)二維碼進(jìn)行編碼和解碼,其中以Google的開源項(xiàng)目ZXing最為流行,不但包含的二維碼種類齊全,而且性能穩(wěn)定。其中的QR二維碼處理器主要包含讀和寫兩個(gè)功能,讀二維碼功能是指將二維碼圖像轉(zhuǎn)化成數(shù)據(jù)流,寫二維碼功能是指將數(shù)據(jù)流轉(zhuǎn)化為二維碼圖像。只需要
6、在應(yīng)用程序中添加ZXing.dll動(dòng)態(tài)鏈接庫,并聲明正確的命名空間,就可以生成QR二維碼處理器對(duì)象,實(shí)現(xiàn)數(shù)據(jù)流和二維碼圖像的相互轉(zhuǎn)化。
3.4 二維碼打印和掃碼
二維碼打印比較簡(jiǎn)單,只要調(diào)用連接在計(jì)算機(jī)上的打印機(jī)就可以完成。對(duì)于二維碼掃碼,雖然有專業(yè)的二維碼掃碼器,但是一般市場(chǎng)價(jià)格比較昂貴。現(xiàn)在的智能手機(jī)和平板電腦自帶的攝像頭都具有二維碼掃碼功能,但是將臺(tái)式機(jī)或筆記本電腦的攝像頭制作成二維碼掃碼器并不常見,本系統(tǒng)通過編程開發(fā)可以將普通的計(jì)算機(jī)攝像頭制作成為性能穩(wěn)定的二維碼掃碼器。原理如下:(1)定位計(jì)算機(jī)的攝像頭并打開它進(jìn)行視頻采集;(2)每隔一段間隔捕獲一個(gè)幀生成圖像;(3)其次
7、對(duì)生成的幀圖像進(jìn)行二值化處理生成二進(jìn)制流;(4)根據(jù)生成的二進(jìn)制流再次生成圖像;(5)對(duì)在此生成的圖像進(jìn)行二維碼解析,如果解析成功則完成二維碼掃碼,如果解析失敗則返回步驟(2)。
4 系統(tǒng)功能實(shí)現(xiàn)
以上從背景、業(yè)務(wù)和技術(shù)三方面對(duì)系統(tǒng)進(jìn)行了概述,現(xiàn)在從功能模塊的角度對(duì)系統(tǒng)進(jìn)行深入分析。
4.1 用戶登錄模塊
用戶登錄模塊主要用于滿足系統(tǒng)的安全性需求,在此主要體現(xiàn)了訪問控制和分權(quán)制衡的原則。訪問控制通過用戶名和口令來實(shí)現(xiàn),只有輸入正確的用戶名和口令被授權(quán)的用戶才可以使用系統(tǒng)。除此之外用戶登錄模塊還負(fù)責(zé)界面重定向功能,因?yàn)樵O(shè)置了管理員用戶和普通用戶兩個(gè)權(quán)限,所以對(duì)于普通用戶戶
8、登錄模塊會(huì)將其重定向到戶口遷移模塊,對(duì)于管理員用戶會(huì)將其重定向到用戶管理模塊,如果管理員用戶也需要使用戶口遷移模塊可以為其再單獨(dú)添加一個(gè)用戶。
4.2 用戶管理模塊
管理員使用用戶管理模塊來維護(hù)數(shù)據(jù)庫中的用戶表,主要實(shí)現(xiàn)對(duì)用戶表的增刪改查。當(dāng)需要添加用戶時(shí),要根據(jù)用戶名查詢用戶表中是與否有與之同名的記錄,如果沒有才能增加新紀(jì)錄;當(dāng)需要?jiǎng)h除用戶時(shí),要查詢尋用戶表中是否有該記錄,如果有該記錄才能將其刪除;當(dāng)修改用戶信息時(shí),要先將記錄從用戶表中提取到內(nèi)存的對(duì)象中,修改完畢后再將最終結(jié)果更新到數(shù)據(jù)庫中。
4.3 戶口遷移模塊
戶口遷出模塊會(huì)根據(jù)居民的身份證號(hào)碼在戶口信息表中查詢
9、,并將查詢的結(jié)果和同時(shí)將生成的二維碼展示在工作臺(tái)賬中,通過打印機(jī)將帶有二維碼的戶口遷移證打印出來。戶口遷入模塊不需要民警手動(dòng)輸入任何信息,只需要通過計(jì)算機(jī)攝像頭掃描二維碼,便可以將居民的戶口信息掃描到計(jì)算機(jī)中并展示在臺(tái)賬上,經(jīng)確認(rèn)無誤后,通過單擊按鈕將臺(tái)賬上的信息保存到數(shù)據(jù)庫中。
5 結(jié)束語
通過對(duì)系統(tǒng)測(cè)試證明該系統(tǒng)可以完成公安戶口遷移業(yè)務(wù)中的基本需求。二維碼技術(shù)用途廣泛,隨著公安信息化建設(shè)的推進(jìn)和發(fā)展,相信會(huì)有更多的公安業(yè)務(wù)領(lǐng)域引入二維碼技術(shù)。
參考文獻(xiàn)
【1】 ISO/IEC 18004:2000. Information technology - Automatic identification and data capture techniques - Bar code symbology - QR Code, 2000.
【2】 Soon T J. QR code. Synthesis Journal, 2008: 59-78.