吳宗霖,丁黃浩,楊艷紅
(蘇州大學 應(yīng)用技術(shù)學院,江蘇蘇州,215300)
隨著網(wǎng)絡(luò)的普及和通訊設(shè)備的進化使得人們的信息接收能力飛速提高,同時也出現(xiàn)了許多通過網(wǎng)絡(luò)和通訊設(shè)備的詐騙案例和詐騙手段。為了提高人們對于各類詐騙的防范意識,減少被詐騙人群數(shù)量,應(yīng)從詐騙源頭入手,提高群眾的防詐騙意識,重視防詐騙教育的普及,向廣大人民分析并揭露詐騙手段。
JSP全稱Java Server Pages,是一種動態(tài)網(wǎng)頁開發(fā)技術(shù)。它使用JSP標簽在HTML網(wǎng)頁中插入Java代碼,主要用于實現(xiàn)Java web應(yīng)用程序的用戶界面部分。網(wǎng)頁開發(fā)者們通過結(jié)合HTML代碼、XHTML代碼、XML元素以及嵌入JSP操作和命令來編寫JSP[1]。JSP標簽有多種功能,比如訪問數(shù)據(jù)庫、記錄用戶選擇信息、訪問JavaBeans組件等,還可以在不同的網(wǎng)頁中傳遞控制信息和共享信息。 JSP性能優(yōu)越,使用方便,易于移植,可以用最簡單的方式來實現(xiàn)復(fù)雜應(yīng)用。
MySQL是一款安全、跨平臺、高效的并與Java編程語言緊密結(jié)合的數(shù)據(jù)庫系統(tǒng)。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。是目前運行速度最快的SQL語言數(shù)據(jù)庫之一。
SQL是結(jié)構(gòu)化查詢語言(Structured Query Language),本質(zhì)上是一種數(shù)據(jù)庫查詢和程序設(shè)計語言[2]。SQL 的典型特征是非過程化,它不要求用戶了解數(shù)據(jù)的具體存放方式, 對于不同的數(shù)據(jù)結(jié)構(gòu),都實現(xiàn)數(shù)據(jù)描述、控制和數(shù)據(jù)操縱等功能。功能強大、操作靈活讓 SQL 迅速成為數(shù)據(jù)庫語言的通用標準。
Servlet是Sun公司開發(fā)的、在服務(wù)器端運行的Java程序。它的主要功能是交互式地實現(xiàn)瀏覽和修改數(shù)據(jù),生成動態(tài)的web內(nèi)容[3]。Servlet能夠讀取客戶端發(fā)送到服務(wù)端的數(shù)據(jù)進行回應(yīng)。Servlet 由 Servlet 容器提供,Servlet容器是提供了Servlet功能的服務(wù)器,本系統(tǒng)使用的Tomcat 就是這樣的服務(wù)器。當客戶端發(fā)出HTTP請求時,先由HTTP服務(wù)器接收,并對HTML靜態(tài)頁面進行解析,HTTP服務(wù)器不會對Servlet請求進行處理,它會將Servlet請求發(fā)送給Servlet容器,Servlet容器接收后會調(diào)用相應(yīng)的Servlet進行處理,并將處理后的結(jié)果返回給Servlet容器,再通過HTTP服務(wù)器將結(jié)果返回給客戶端。
該系統(tǒng)是基于前后端分離的開發(fā)方式設(shè)計的系統(tǒng),其前端注重用戶交互體驗,界面大方簡潔美觀,流動性強。該系統(tǒng)的前端分別設(shè)計了學習視頻模塊、案例模塊、用戶登陸模塊、2D滑動詐騙模擬游戲區(qū)塊以及3D書畫瀏覽區(qū)塊,且首頁配備快速導(dǎo)航,能夠方便用戶快速切換頁面,使用系統(tǒng)服務(wù)。該系統(tǒng)的后端管理員能夠?qū)τ脩舻男畔⑦M行增刪改查等管理操作,進行系統(tǒng)維護,也可以對欄目大類信息和案例條目詳細信息進行修改更新等功能,進行頁面的運營和維護。系統(tǒng)總體功能結(jié)構(gòu)圖如圖1所示。
圖1 系統(tǒng)功能圖
動態(tài)網(wǎng)站數(shù)據(jù)庫的設(shè)計與實現(xiàn)是動態(tài)網(wǎng)站開發(fā)過程中的關(guān)鍵技術(shù),MySQL作為一種關(guān)系型的數(shù)據(jù)庫,以其容易理解、使用方便、易于維護、可用于復(fù)雜查詢等特點成為了管理和設(shè)計信息系統(tǒng)的主流選擇之一。根據(jù)防詐騙系統(tǒng)的需求及其所需要實現(xiàn)的功能設(shè)計了數(shù)據(jù)庫,具體如下:
(1)用戶信息表(user):用戶名、郵箱、密碼、生日、賬號許可度(為0是超級管理員,為1則是普通用戶)。
(2)欄目信息表(column):欄目名、欄目編號、欄目內(nèi)容、上架時間、欄目公告。
(3)案例信息表(case):案例編號、案例標題、案例內(nèi)容、案例來源、作者名稱、布日期、案例瀏覽量。
需要建立數(shù)據(jù)表的結(jié)構(gòu)為:
(1)user表:用戶信息表是對系統(tǒng)所有用戶以及后臺管理員信息的描述,用來存放和記錄系統(tǒng)前臺和后臺的用戶信息,如表1所示。
表1 user表
(2)column表:欄目信息表是對首頁案例大類的一個大體描述,用于存放案例的大類,以及說明案例類目的概況,如表2所示。
表2 column表
(3)case表:案例信息表是對案例詳細信息的描述,用于存放和記錄案例的相關(guān)內(nèi)容,如表3所示。
表3 case表
系統(tǒng)前臺主要用于用戶交互,系統(tǒng)的首頁主要包含五個部分,頭部有輪播圖內(nèi)容,其中包含防詐騙教育推廣視頻,教育漫畫,公益廣告等。第二個則是案例板塊,包含四大詐騙案例欄目,每個欄目又包含著各個主題詳細的案例內(nèi)容。第三個是滑動瀏覽模塊,該模塊包含三個滑動瀏覽盒子,盒子里包含的內(nèi)容則是以層層遞進的方式模擬的三個2D紙片人游戲,以寓教于樂的方式向用戶傳遞如何預(yù)防詐騙并保護自己。第四個部分包含了3D書頁模塊,用戶可以翻動系統(tǒng)自帶的3D電子書,進行防詐騙知識學習。第五個部分則是尾部,其中包含了系統(tǒng)以及開發(fā)團隊的必要信息。該頁面包含以下三個主要難點,第一個是網(wǎng)頁綁定響應(yīng)函數(shù)到游戲模塊自動播放游戲動圖,需要將函數(shù)綁定進窗口滾輪,同時添加窗口的外部監(jiān)聽器window.addEventListner進行實時監(jiān)聽,并計算出到達元素時頁面的實時高度,以此來實現(xiàn)滾輪到達元素自動觸發(fā)函數(shù)使2D紙片人游戲自動觸發(fā)并播放。第二個是游戲內(nèi)選項切換場景功能,需要綁定按鈕響應(yīng)函數(shù),用if語句來進行判斷,遍歷數(shù)組中儲存好的圖片并達到切換的目的,在這個過程中需要對畫面的排版進行準確的把控,保證在復(fù)雜的代碼關(guān)系中元素能夠有序觸發(fā)。第三個是游戲滑動瀏覽頁面的實現(xiàn),需要對瀏覽部分進行分割,并綁定滾輪響應(yīng)函數(shù)使之在滾輪滑動的過程中,有透明度,陰影和高度等立體變換,在這個過程中,我們需要對滾輪綁定函數(shù)進行測試,以此達到了最終的合適的參數(shù)為:
var box2height = TOP - document.documentElement. scrollTop*1.15;
var box1opcity = TOP / document.documentElement. scrollTop * 1.05;
var box2opcity = TOP / document.documentElement. scrollTop
var box2scale = TOP / document.documentElement.scrollTop
box3height = TOP*1.2 - document.documentElement. scrollTop;
在系統(tǒng)的首頁會有登陸按鈕,點擊登陸按鈕可以進行用戶登陸,如果用戶沒有注冊該系統(tǒng)賬號,則可以切換至注冊頁面進行注冊,注冊頁面端有機器人客服系統(tǒng)可以幫助解決用戶注冊遇到的一些硬性問題或者普遍遇到的問題,如果有進一步的困難則可以從QQ頁面跳轉(zhuǎn)至人工客服尋求幫助。注冊成功之后,系統(tǒng)將自動返回至登陸頁面進行登陸,系統(tǒng)的登陸流程包括:①驗證登陸;②查詢權(quán)限;③登陸至相應(yīng)端頁面[4]。在登陸的過程中需要對用戶賬號進行驗證,首先判斷用戶是否在文本框內(nèi)輸入了用戶名密碼和驗證碼,在這個邏輯實現(xiàn)中,使用了request.getParameter()的方法,用來獲取通過http協(xié)議提交過來的數(shù)據(jù),通過容器的實現(xiàn)來取得通過get或者post方法提交過來的數(shù)據(jù),該方法把客戶端的數(shù)據(jù)傳送到服務(wù)器端,并返回String類型的數(shù)據(jù)使之與web端輸入的內(nèi)容對比驗證其是否為空,并作出相應(yīng)的紅字提示,如果不為空,則再對數(shù)據(jù)庫中的用戶名密碼進行查找并判斷是否正確,接著再對隨機驗證碼進行判斷是否符合,全部驗證通過后,系統(tǒng)會對該登陸賬號的預(yù)先設(shè)置好的權(quán)限進行判斷,再依據(jù)賬號權(quán)限進入其對應(yīng)的管理權(quán)限界面,具體的登陸流程如圖2所示。
圖2 登陸算法流程圖
在用戶信息管理功能模塊中,管理員賬號可以對所有用戶的信息進行查詢,刪除,修改等管理操作,來維護系統(tǒng)環(huán)境,封禁違規(guī)用戶,保護網(wǎng)絡(luò)安全。管理員可以用分頁查詢、搜索查詢、快速查找等多種查詢方法來查詢系統(tǒng)全部的用戶信息,方便了管理員的統(tǒng)一管理以及精準修改,當管理員查詢到相應(yīng)的用戶之后,管理員可以對該用戶信息進行修改更新,也可以快捷刪除不良用戶,或者主動增加用戶信息,為有突發(fā)狀況無法注冊的的用戶提供了便利,在此處的邏輯實現(xiàn)中多次使用了request.setAttribute()方法,該方法為某一變量賦值,該值使用request.getRequestDispatcher().forward(request, response)的方法從Jsp頁面中去獲取,接著使用request.getAttribute()方法使Jsp頁面獲取到該值進行顯示,而該方法傳遞的數(shù)值只會出現(xiàn)在Web容器內(nèi)部,這個部分用于頁面的紅字提示,可以輔助管理員的一系列信息管理操作。在驗證管理員輸入不為空之后,系統(tǒng)會對管理員輸入的用戶信息進行查找驗證,比對數(shù)據(jù)庫確認存在后,可完成刪除修改等一系列操作。其中具體的修改界面如圖3所示。
圖3 用戶快速刪除功能界面
在欄目信息管理功能中,主要實現(xiàn)了對欄目的編號、信息、內(nèi)容、時間、公告、名稱的修改操作,管理員使用這一功能,可以根據(jù)欄目實時更新相應(yīng)的內(nèi)容,對欄目進行分類編號以及詳細信息的修改,并方便了更新每日公告板,以及公益短視頻。欄目作為案例模塊的分類入口,對欄目的分類,更加方便了之后案例的管理,使整個頁面系統(tǒng)調(diào)理更加清晰,避免了管理員的冗余工作,大大提高了管理效率。
在案例管理功能中,主要實現(xiàn)了增加案例、刪除案例、修改案例、查詢案例的四步操作,在這四步操作的基礎(chǔ)下,管理員能夠更好的修改案例的編號,標題,內(nèi)容,時間,作者名稱等詳細的案例信息。并可以根據(jù)案例每日瀏覽量制定好更合適的瀏覽計劃,上架效果更好的案例資源與鏈接,方便了用戶的觀看學習的同時,也大大提高了自己的工作效率。
防詐騙系統(tǒng)的設(shè)計與開發(fā)是基于Java Web的基礎(chǔ)上,實現(xiàn)的一個前后端分離系統(tǒng),經(jīng)過單元測試和系統(tǒng)測試,證明了系統(tǒng)的穩(wěn)定性與可靠性,同時異步加載大大優(yōu)化了頁面的加載速度。在如今這個詐騙方法層出不窮的時代,防詐騙系統(tǒng)的必要性也體現(xiàn)了出來,為了能夠給大眾群體提供免費的反詐騙知識以及鍛煉反詐騙意識,我們的系統(tǒng)實現(xiàn)并達到了預(yù)期的功能,符合國家當下防詐騙宣傳,幫助廣大老百姓提高反詐騙能力,能夠向用戶傳達一定的防詐騙知識,具有重大教育意義。系統(tǒng)前臺頁面美觀簡潔且通俗易懂,方便老年人以及青少年使用,適用于廣大群眾,系統(tǒng)后臺操作方便,兼容度高,加快整體響應(yīng)速度,很大程度上方便了管理員的操作,能夠很好的支撐和運營起整個系統(tǒng)。