唐湘云++李依桐++李樂
摘要:該文闡明了一個基于網(wǎng)站的植物檢索系統(tǒng)的設計與實現(xiàn)過程。文中用軟件工程的思想從需求分析出發(fā),設計出系統(tǒng)的功能模型。該網(wǎng)站應用了PHP、MySQL、Dreamverver等進行開發(fā),并運用了ThinkPHP輕量型框架和MVC模式框架,穩(wěn)定性與安全性兼?zhèn)?。并且有技術(shù)升級的能力,能跨平臺地運行在各種主流的硬件平臺和操作系統(tǒng)。
關(guān)鍵詞:ThinkPHP;信息檢索系統(tǒng);MVC模式;植物資源數(shù)據(jù)庫
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2016)09-0001-02
1 背景介紹
從植物資源數(shù)據(jù)庫角度來看,目前世界上有許多國家進行過嘗試,取得了不少成果,例如:20多位專家學者參加、耗資近千萬美元的美國植物數(shù)據(jù)庫工程[1];IOPI的植物物種工程[2]等。我國的植物數(shù)據(jù)庫建設始于20世紀80年代[3],各種專門性數(shù)據(jù)庫查詢系統(tǒng)陸續(xù)出現(xiàn),如中國科學院昆明植物研究所的中國植物物種信息數(shù)據(jù)庫系統(tǒng);徐妍等[4]的野生植物資源信息檢索數(shù)據(jù)庫;李月華等[5]的園林植物標本數(shù)據(jù)庫等。這些數(shù)據(jù)庫多為基于 Web 的網(wǎng)絡數(shù)據(jù)庫,很少涉及各地區(qū)藥用植物資源的數(shù)據(jù)庫。
本文正是探究如何應用信息化網(wǎng)絡化,使藥用植物資源調(diào)研的數(shù)據(jù)更好地為社會生產(chǎn)和科研服務。運用信息技術(shù)手段搭建系統(tǒng)的規(guī)范的信息檢索數(shù)據(jù)庫平臺,實現(xiàn)信息優(yōu)化存儲,提高共享查詢效率。而且較之傳統(tǒng)手工查詢而言,在人力、時間上都相對高效快捷,可為藥用交易用戶對當?shù)厥袌鲋兴幉钠贩N的選擇提供一定參考,有效利用藥用植物資源提供更好的服務。
2 網(wǎng)站實現(xiàn)所使用的技術(shù)介紹
本數(shù)據(jù)庫系統(tǒng)以PHP作為腳本語言,使用了面向?qū)ο蟮拈_發(fā)結(jié)構(gòu)和MVC模式的ThinkPHP框架,采用PHP Storm集成開發(fā)環(huán)境,并結(jié)合MySQL數(shù)據(jù)庫開發(fā)的WEB信息檢索數(shù)據(jù)庫系統(tǒng)應用(如圖1)。
圖1 技術(shù)結(jié)構(gòu)圖
其中ThinkPHP框架是一個兼容的輕量級國產(chǎn)PHP開發(fā)框架。它從Struts結(jié)構(gòu)移植而來并進行了改進,融合了Struts的思想和標簽庫、RoR的ORM映射和ActiveRecord模式,具有兼容性強、簡單易用的特點[8]。MySQL是目前比較流行的開源數(shù)據(jù)庫,被廣泛地應用在各個領域,其優(yōu)點在于較高的可靠性、成本低、速度快[9]。
本數(shù)據(jù)庫系統(tǒng)主要采用面向?qū)ο蟮拈_發(fā)結(jié)構(gòu)和MVC模式:模型(M),Model類來完成模型的定義;控制器(C),應用控制器和Action控制器都承擔了控制器的角色;視圖(V),模板的實現(xiàn)是和框架無關(guān)的[7]。
3 植物資源數(shù)據(jù)庫檢索系統(tǒng)設計
3.1 需求分析
1)用戶進入網(wǎng)站首頁,瀏覽管理者定期發(fā)送的植物新聞;通過快捷入口,進入某類植物分類信息進行查看。
2)植物檢索:提供四種植物信息檢索方式,藥材拉丁名檢索、藥材中文名檢索、藥材別名檢索、藥材所屬植物名檢索。
3)植物信息查看:點擊查看植物信息詳情,包括所屬種群分類、中藥別稱、入藥部位、藥性分類、性味歸經(jīng)、功能主治、用法用量、炮制技術(shù)、主要產(chǎn)地、藥材照片等信息。
4)藥膳:通過友好的界面展示藥膳的具體介紹、分類信息和舉例。
5)管理員模塊:管理員通過管理員登錄界面登陸后可對植物信息進行及時的更新及管理。
3.2 數(shù)據(jù)庫系統(tǒng)總體設計
數(shù)據(jù)庫系統(tǒng)的開發(fā)主要包括三個步驟:藥膳資源信息的收集與整理、MySQL數(shù)據(jù)庫的設計與建立和WEB應用的開發(fā)。根據(jù)需求分析,藥膳植物資源信息檢索數(shù)據(jù)庫WEB應用具有數(shù)據(jù)庫資源管理、數(shù)據(jù)庫輸出、植物圖片管理等主要功能。根據(jù)需求分析為設計數(shù)據(jù)庫系統(tǒng)WEB應用建立總體的方案。WEB應用的功能模塊(如圖2)。
圖2 系統(tǒng)功能模塊
WEB應用中的信息檢索模塊有精確檢索與模糊檢索兩種不同的檢索方式。精確檢索對用戶鍵入的關(guān)鍵字進行數(shù)據(jù)庫檢索,檢索與關(guān)鍵字完全匹配的信息并將檢索結(jié)果返回,返回的值如果有則是唯一。模糊檢索對用戶鍵入的關(guān)鍵字進行數(shù)據(jù)庫檢索時不是信息的完全匹配,只要數(shù)據(jù)庫相應的信息中包含關(guān)鍵字的一部分,就會將此條信息返回,所以模糊查詢的查詢結(jié)果不唯一。
信息顯示模塊是將數(shù)據(jù)庫信息以某種排列方式展現(xiàn)給用戶,方便客戶的查閱。
用戶后臺由數(shù)據(jù)庫管理員來負責操控,實時管理和更新數(shù)據(jù)庫中的數(shù)據(jù)。管理員可以通過網(wǎng)絡連接數(shù)據(jù)庫,應用數(shù)據(jù)庫后臺應用的數(shù)據(jù)庫信息維護功能對數(shù)據(jù)庫進行維護,達到植物資源信息同步擴充、維護與更新的目的。
4 植物資源數(shù)據(jù)庫檢索系統(tǒng)開發(fā)
4.1 數(shù)據(jù)庫設計
根據(jù)需求分析為數(shù)據(jù)庫檢索系統(tǒng)建立數(shù)據(jù)庫表。表以及表的用途描述(如表1)
藥用植物資源主要信息表(ag_drugs)使用自動遞增的INTEGER類型的編號作為主碼,來標識每一條植物的主要信息,以便于對植物信息進行檢索。藥用植物所屬植物表(ag_plant)使用藥用植物主要信息表編號作為外碼,來自植物資源主要信息表(ag_drugs),來標識每一條藥膳信息。每條藥用植物所屬植物信息包含對藥用植物所屬植物說明,便于系統(tǒng)進行查詢工作。
藥用植物圖片表(ag_picture)使用藥用植物中文名作為外碼來自植物資源主要信息表(ag_drugs),來標識每一條植物及對應中藥材圖片。本數(shù)據(jù)庫將植物圖片存于計算機硬盤某個專有文件夾中,僅將圖片的本地鏈接存于數(shù)據(jù)庫。這種方法能加快數(shù)據(jù)庫的查詢速度,減少數(shù)據(jù)庫負荷。為了達到預期目標,要求圖片的大小為尺寸一般為410*290像素。
5 植物資源數(shù)據(jù)庫檢索系統(tǒng)應用
5.1 植物信息檢索模塊
植物資源信息檢索主頁,數(shù)據(jù)庫系統(tǒng)頁面頂部部分,有信息檢索的目錄項:信息檢索、瀏覽數(shù)據(jù)庫、植物圖片、藥膳。
點擊目錄項的信息檢索之后來到信息檢索的主界面(如圖3)。一共有四種檢索方式供用戶選擇,并且可以選擇精確檢索或者模糊檢索。
點擊目錄項的“瀏覽數(shù)據(jù)庫”,可以進入數(shù)據(jù)庫全部信息列表頁面。此頁面以列表的形式將數(shù)據(jù)庫中全部植物資源信息呈獻給用戶。這個列表包含植物資源科拉丁名、科中文名、種拉丁名、種中文名、食用部位等簡要信息。點擊右側(cè)的查看可看到植物詳情(如圖4):
點擊目錄項的“植物圖片”按,可進入數(shù)據(jù)庫內(nèi)存儲的所有植物資源圖片列表頁面。植物資源圖片列表采用分頁顯示的方式,每一頁面顯示9張植物資源縮略圖片。點擊縮略圖,即可進入對應植物資源的詳細信息頁面。
點擊數(shù)據(jù)庫系統(tǒng)右側(cè)的“藥膳”按鈕,可進入藥膳介紹資源信息列表。
5.2 植物信息管理模塊
點擊主頁下方的管理員登陸入口,可進入管理員登陸頁面。
登陸成功之后,就來到了植物信息管理的首頁。首頁目錄項有四個選項:回到首頁、添加植物信息、刪改植物信息、添加圖片信息。(如圖5)
參考文獻:
[1] ZHONG B, XU Y J. Scale Effects of Geographical Soil Datasets on Soil Carbon Estimation in Louisiana, USA:A Comparison of STATSGO and SSURGO ?1.
[2] Construction of retrieval database system for ornamental plants in Tibet.southwestern China.Journal of Beijing Forestry University ,2012,34(1):105-109.
[3] 匡導球.中國出版技術(shù)體系及其發(fā)展歷程[J]. 南京社會科學,2009(06).
[4] 徐妍,臧紹剛.野生植物資源信息檢索數(shù)據(jù)庫的建立和使用[J].山地農(nóng)業(yè)生物學報,19(6):457--459,2000.
[5] 李月華,陳之歡,高潤清.園林植物標本數(shù)據(jù)庫的研究[J].北京農(nóng)學學報,2000.15(3):23-26.
[6] 田興軍,張慧仁,張立新. 江蘇植物資源信息系統(tǒng)[J].植物研究,2002,22(1):125-128.
[7] 戴一平.MVC設計模式在PHP開發(fā)中的應用[J]..計算機與現(xiàn)代化,2011(3).
[8] 百度百科.ThinkPHP[DB/OL].http://baike.baidu.com/view/908071.htm, 2015-12-10.
[9] 肖維明. 基于PHP+MySQL的網(wǎng)站開發(fā)[J].物流工程與管理,2009(6).