王小霞
(中國社會科學院民族學與人類學研究所 網絡信息中心,北京 100081)
摘要:研究了數據庫檢索系統的相關技術并介紹了一種基于B/S模式的數據庫檢索系統。系統選擇H2數據庫,應用B/S模式和MVC框架實現對文本、圖片、聲頻和視頻等多種數據資源的統一描述和集成管理,可對多種資源統一檢索。
關鍵詞:數據庫;檢索系統;H2;瀏覽器/服務器(B/S)模式;MVC框架
中圖分類號:TP309.3文獻標識碼:ADOI: 10.19358/j.issn.1674-7720.2017.06.027
引用格式:王小霞. 基于B/S模式數據庫檢索系統的設計與實現[J].微型機與應用,2017,36(6):89-91.
0引言
*基金項目:國家民委民族問題研究項目(2016GMB012)隨著數據信息電子化的發展,對數據庫的檢索查詢應用變得尤為重要。依靠SQL 語句查詢的方式要求用戶既要掌握 SQL 語言,又要理解數據的組織結構。所以通過關鍵詞檢索技術和語義知識庫技術是解決數據庫檢索問題的關鍵技術。由于社會科學研究人員在數據庫檢索方面基礎知識的有限,數據庫檢索在社會科學研究中的應用發展就會顯得尤為急需。
再者從數據庫檢索的發展情況來看,關鍵詞檢索技術隨著互聯網上搜索引擎的巨大成功而逐漸成熟,用戶只需在搜索引擎中輸入需要查詢的關鍵詞,搜索引擎便可將匹配關鍵詞的內容按照相關程度排序呈現給用戶。關系數據庫關鍵詞檢索一直是一個主流的研究方向[1]。
本文根據工作的現實需求,設計開發一個數據庫檢索系統,系統以 J2EE 架構為基礎,結合H2數據庫技術、語義 Web 技術和關鍵詞檢索技術,實現關系數據庫語義理解和檢索。
1系統分析
關于新疆游牧維族研究資料的應用,利用數據庫的手段,借用人類學的方法,全面地考察、記錄游牧維族的社會文化,建立高水平的民族學人類學專題數據庫檢索系統。
根據需要和數據庫檢索技術及當前軟件發展的趨勢, 該數據庫檢索系統需要做到檢索速度快、方便外出攜帶等,因此選擇H2數據庫,采用JSP技術B/S結構模式,以 “模型視圖控制器” (ModelViewController,MVC)設計模式為理念進行系統開發設計和MVC框架設計,完成該數據庫的開發,實現數據信息的交換。
2數據庫檢索系統設計
2.1H2數據庫設計
數據庫設計是數據庫檢索系統的核心部分,數據庫設計的優劣直接關系到檢索的速度與穩定性。 而對于數據庫設計來說,最重要的是遵循數據庫設計的一般原則,即安全、完整、一致、規范。
H2是一個較小的嵌入式數據庫引擎,屬于開源數據庫,可以隨時免費快速使用,有嵌入式的數據庫服務器,支持集群。H2數據庫和其他的常用的開源數據庫如Derby、HSQLDB、MySQL、PostgreSQL不同,這幾種開源數據庫都需要安裝獨立的客戶端和服務器端。H2的優勢在于:(1)H2采用純Java編寫,因此不受平臺的限制;(2)H2只有一個jar文件,十分適合作為嵌入式數據庫試用;(3)H2提供Web控制臺用于操作和管理數據庫內容[2]。
鑒于數據庫檢索系統的特殊需求,選擇H2數據庫。數據庫定義了資源類型resource type(專著/論文/其他文章/圖片/視頻)、社會文化類social culture type(社會組織、婚姻家庭制度、生產現狀、衣食住行、教育、語言文化、藝術文化、婚俗文化、宗教信仰文化、喪葬文化)、題目title、作者Author、提供者Provider、doc文件名Filename、pdf文件名filename、論文摘要(2 000字內)、關鍵詞keyword、來源/出處sources、出版社publisher、出版時間或拍攝時間time、地點place、資源對象類型resource object type(山區游牧牧民、沙漠腹地游牧牧民、和游牧相關的村民、非游牧牧民);相關民族EthnicGroup關鍵詞key words、摘要abstract等。
H2數據庫與各數據庫特征的對比如表1所示。
2.2B/S結構模式
瀏覽器的客戶機/服務器(Browser/Server,B/S)結構通信方式比C/S結構高效。B/S結構將系統功能實現的主要內容集中到服務器上。客戶端可以使用任何一個瀏覽器如Internet Explorer或Netscape Navigator,數據庫服務器安裝H2、SQL Server、Oracle、MYSQL等數據庫。瀏覽器可以通圖1B/S模式結構圖過Web服務同數據庫進行數據交互。B/S模式結構圖如圖1所示。
采用B/S模式有以下的好處:(1)各個用戶通過 HTTP請求在權限范圍內調用 Web 服務器上不同處理程序,從而完成對數據的查詢或修改;(2)它使用戶的操作變得更簡單;(3)客戶端只是一個簡單易用的瀏覽器軟件。無論是決策層還是操作層的人員都無需培訓,可以直接使用。B/S 模式的這種特性,還使系統維護的限制因素更少; B/S 也適用于網上信息發布,使得傳統的 MIS 的功能有所擴展[3]。
2.3MVC框架
MVC是一個存在于服務器端表達層的模型,它將應用分開,改變應用之后的高度耦合。MVC 模型將應用分為三層:模型(Model)、視圖(View)、控制器(Controller)。
模型:相當于一個數據庫應用,用數據庫來存儲應用的狀態。視圖:相當于一個頁面的顯示,以某種方式將模型中的應用展現在用戶面前。控制器:在視圖中將用戶的輸入提交給指定的模型,然后在模型中解釋用戶的輸入,最后將結果返回給視圖[4]。
MVC模式的優點: 首先,模型、視圖與控制器的分離使得一個模型可以具有多個顯示視圖,如果用戶通過某個視圖的控制器改變了模型的數據,所有其他依賴于這些數據的視圖都應反映這些變化,因此,無論何時發生了何種數據變化,控制器都會將變化通知所有的視圖,實現顯示的更新。其次,模型的可移植性。因為模型是獨立于視圖的,所以可以把一個模型獨立地移植到新的平臺工作,需要做的只是在新平臺上對視圖和控制器進行修改[5]。
可以借用參考文獻[6]中MVC框架結構圖(如圖2所示)進一步了解MVC框架。
3數據庫檢索系統的實現
鑒于以上需求分析和技術研究,設計開發新疆游牧維族社會文化調查研究數據庫檢索系統。
整個檢索系統基于B/S模式,利用Spring+Hibernate+ExtJs框架整合了應用,嚴格按照MVC的標準,實現了顯示層、控制層、業務邏輯層和數據庫連接層等多層框架。
利用Spring IOC和Spring AOP作為項目粘合劑,可以動態調整、更換所需的企業級服務和應用組件。 借助于Spring IOC,對所需要的應用組件進行依賴注入;借助于Spring AOP,透明地使用企業級服務;借助于Spring,將主流的開源框架以“熱拔插”方式集成到應用,組成了項目輕量級的J2EE架構。將JOTM集成到Spring應用中,使得持久化服務能夠基于Hibernate實現,借助于Spring DAO抽象將Hibernate集成到應用組件中。將JSF、Tapestry Web框架集成到Spring應用中,直接使用Spring提供的集成支持。將基礎的程序塊組成在一起成為一個連貫的整體。
Hibernate的底層驅動也讓項目可以隨意地切換數據庫,目前項目使用了內存數據庫H2,快速簡潔,Hibernate直接提供相關的支持,且與Spring集成使用更簡潔。
3.1數據庫檢索系統功能
新疆游牧維族社會文化調查研究數據庫檢索系統包括檢索系統和新疆游牧維族社會文化調查研究數據庫。檢索系統分為文獻查詢和文獻數據錄入修改兩個子系統,其界面如圖3、圖4所示。
文獻查詢子系統主要功能:系統能分別進行資源類型resource type、題目title、作者author、文件名name、出版信息publish information、地點place、時間time、提供者provider、出處source 、資源對象類型resource object type、社會文化類social culture type 關鍵詞key words、摘要abstract等字段的分類單項檢索和并行多項檢索。
文獻數據錄入子系統完成文獻數據庫數據的批量上傳和單條數據的添加、刪除和修改功能。可以從系統后備庫下載數據庫模板進行多條數據批量修改或整個數據庫數據修改替換。
3.2數據庫檢索系統特點
(1)采用TBS全文檢索系統具有多途徑、多層次檢索文獻的功能。可從資源類型resource type、題目title、作者auther、文件名name、出版信息publish information、地點place、時間time、提供者provider、出處source 、資源對象類型resource object type、社會文化類social culture type 關鍵詞key words、摘要abstract多個方面提供多途徑檢索。
(2)數據庫采用了輕數據庫H2,小巧靈活的嵌入式數據庫,可以跨平臺,既保留了結構化數據庫特性,又具備文件式數據庫靈活及性能。(3)用Hiberante技術做ORM,增加了大量的緩存機制,減少了數據庫讀取壓力。系統檢索速度快。Hibernate的底層驅動也讓項目可以隨意地切換數據庫,快速簡潔。Hibernate直接提供相關的支持,且與Spring集成使用更簡潔。
(4)整個系統雖然為Web瀏覽,但是可以做到隨時拷貝部署。本系統也可以作為公網的服務,團隊一起瀏覽,特別適合調研和之后宣傳使用。
(5)操作方便,主要采用菜單驅動方式,直接檢索,易操作,調研過程中,工作人員約定格式即可同時作業,只需一鍵導入就可以完成入庫操作。系統啟動關閉都很方便,數據隨時可以拷貝備份,便于攜帶。
(6)數據可靠性高,對于入庫后的檢索,針對所有關注的內容均可以檢索。可以方便查看個別詳情。
(7)成本低,經濟效益高。
4結論
本文在進行系統分析和對數據庫檢索系統核心技術研究的基礎上,設計完成新疆游牧維族社會文化調查研究數據庫檢索系統。該數據庫檢索系統檢索速度快,方便外出攜帶等多種使用功能,同時具有低成本、高效率、易于維護和擴展以及更新快捷方便等優勢,解決了目前研究人員外出,在沒有網絡狀態下檢索困難的問題,同時還解決了不能網上發布的保密資料只供自己瀏覽檢索的問題。
未來將在數據庫檢索多庫聯合檢索、MVC框架、Hibernate、Tomcat、遵循更高技術的檢索管理架構等方面做進一步的研究和探索。
參考文獻
[1] 萬長林,徐德明. 基于語義的數據庫關鍵詞檢索系統[J]. 計算機與現代化,2014(10):37-41.
[2] Mr & Cheng. H2數據庫使用[EB/OL].(2013-xx-xx)[2016-09-19].http://my.oschina.net/leoson/blog/103275.
[3] 賈福龍. 基于 Web 瀏覽器/服務器模式 的實時審計系統的開發[J]. 遼寧工學院學報,2006, 8(3) :100-103.
[4] 梁龍,成益鑫,吳建波,等.基于 MVC 的振動噪聲數據庫系統的設計與實現[J].計算機工程與設計,2009,30(19):4415-4418.
[5] 曾令強.MVC 模式在高校科研檔案管理信息系統中的應用研究[J].科技管理研究,2010,30(14):130-133.
[6] 邊霞,趙奎,胡曉勤,等.基于MVC的文件備份后臺管理系統的設計與實現[J].計算機工程與設計,2011,32(9):3195-3198.