劉環(huán)
摘要:本文以作者所在單位的實.際工作要求為設(shè)計需求,在采用webservice技術(shù)實現(xiàn)了Android端與云端數(shù)據(jù)庫連接的架構(gòu)基礎(chǔ)上,設(shè)計和實現(xiàn)了高校學(xué)生就業(yè)管理系統(tǒng)。
[關(guān)鍵詞]移動網(wǎng)絡(luò)webservice云端數(shù)據(jù)庫
近年來隨著高校在校學(xué)生的不斷增加,許多學(xué)校都編寫了高校學(xué)生就業(yè)管理系統(tǒng),系統(tǒng)的投入運行有效地解決了學(xué)校管理人員、企業(yè)招聘管理人員、就業(yè)學(xué)生在管理、招聘、就業(yè)等環(huán)節(jié)中遇到的效率低、環(huán)節(jié)多、信息化程度低、信息延遲等問題。當(dāng)前高校的學(xué)生就業(yè)管理系統(tǒng)大多數(shù)是基于B/S架構(gòu)的,基于移動端的較少,因此隨著移動端的廣泛使用,開發(fā)移動端的高校就業(yè)管理系統(tǒng)作為B/S架構(gòu)系統(tǒng)的補充,已經(jīng)變成了一個亟待解決的問題。
1系統(tǒng)功能概述
系統(tǒng)分為管理員端與客戶端,客戶端的主要功能是查詢功能,主要包括以下幾個部分。首先應(yīng)根據(jù)用戶需求,選擇各個公司招聘信息查詢。此項查詢從公司表中提取信息,其結(jié)果是一個包括所屬行業(yè)、招聘職位、誠聘薪水、有效時間等信息的表格信息。此外,系統(tǒng)還提供了對學(xué)生信息與企業(yè)詳細信息的查詢功能,學(xué)生信息應(yīng)包括學(xué)生的姓名、性別、畢業(yè)院校、年齡、出生日期、專業(yè)、最高學(xué)歷等內(nèi)容。企業(yè)信息包括企業(yè)名稱、聯(lián)系方式、招聘專業(yè)、工資待遇、發(fā)布時間等詳細內(nèi)容。
客戶端的主要功能主要有將新的企業(yè)招聘信息添加到數(shù)據(jù)庫中,以此增加新的信息量,方便管理和使用。
學(xué)生用戶和企業(yè)用戶在第一次使用的時候,都需要進行注冊。學(xué)生信息注冊中,需要添加用戶名、密碼、真實姓名、年齡、性別、畢業(yè)院校、個人簡歷等信息。在企業(yè)注冊信息中,需要添加用戶名、密碼、企業(yè)名稱、企業(yè)地址、企業(yè)簡歷等信息。系統(tǒng)模塊劃分如圖1所示。
2系統(tǒng)數(shù)據(jù)庫的架構(gòu)設(shè)計
2.1數(shù)據(jù)庫表設(shè)計
數(shù)據(jù)庫設(shè)計是系統(tǒng)設(shè)計過程中比較重要的一步。在軟件開發(fā)過程中要多次用到數(shù)據(jù)庫,因此數(shù)據(jù)庫的設(shè)計要與系統(tǒng)設(shè)計相結(jié)合,使其能夠把系統(tǒng)中的各個數(shù)據(jù)表組織起來,使系統(tǒng)能夠方便、及時、準(zhǔn)確的從數(shù)據(jù)庫中得到需要的信息。本系統(tǒng)的學(xué)生信息數(shù)據(jù)表、企業(yè)信息數(shù)據(jù)表、求職數(shù)據(jù)表的結(jié)構(gòu)設(shè)計如表1、表2和表3所示。
2.2Android系統(tǒng)連接云端數(shù)據(jù)庫的設(shè)計
常用的SQLite數(shù)據(jù)庫雖然是安卓常用的數(shù)據(jù)庫,但只能在手機本機上進行存儲,實現(xiàn)不了遠程登錄數(shù)據(jù)庫的功能。而且對于一個較為大型的系統(tǒng)來說,Android直連SQLsever也是非常不恰當(dāng)?shù)?,本系統(tǒng)采用的是Android通過WebService實現(xiàn)遠程連接SQLsever數(shù)據(jù)庫的方案。
通過WebService調(diào)用SQLServer數(shù)據(jù)庫的設(shè)計原理,就是客戶端需要和遠程數(shù)據(jù)庫進行數(shù)據(jù)交換時,通過一個橋梁WebService來完成所有任務(wù)。Webservice是一個獨立的,低耦合的,自包含的、基于可編程的web應(yīng)用程序,可使用開放的XML標(biāo)準(zhǔn)來描述、發(fā)布、發(fā)現(xiàn)、協(xié)調(diào)和配置這些應(yīng)用程序。
WebService在本系統(tǒng)中的實現(xiàn)分為三步,第一步是設(shè)計服器端程序,新建一個調(diào)用數(shù)據(jù)庫的類DBOperation,并把所有對SQLServer的操作都寫在這個類中。然后再定義一個List類用于獲取數(shù)據(jù)信息;第二步是定義一個增加信息類insertData、一個刪除數(shù)據(jù)類deleteData、關(guān)閉與銷毀類Dispose。第三步實現(xiàn)在瀏覽器中選擇相應(yīng)的功能并傳遞參數(shù),調(diào)用瀏覽器中的調(diào)試程序。
3主要技術(shù)實現(xiàn)方法
3.1webservice的主要實現(xiàn)方法
Android與云端數(shù)據(jù)庫連接的主要實現(xiàn)代碼:
publicvoidRequest(Objct...params){
newAsyncTask