药用植物资源数据库检索系统的设计与实现
2016-05-18唐湘云李依桐李乐
唐湘云++李依桐++李乐
摘要:该文阐明了一个基于网站的植物检索系统的设计与实现过程。文中用软件工程的思想从需求分析出发,设计出系统的功能模型。该网站应用了PHP、MySQL、Dreamverver等进行开发,并运用了ThinkPHP轻量型框架和MVC模式框架,稳定性与安全性兼备。并且有技术升级的能力,能跨平台地运行在各种主流的硬件平台和操作系统。
关键词:ThinkPHP;信息检索系统;MVC模式;植物资源数据库
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)09-0001-02
1 背景介绍
从植物资源数据库角度来看,目前世界上有许多国家进行过尝试,取得了不少成果,例如:20多位专家学者参加、耗资近千万美元的美国植物数据库工程[1];IOPI的植物物种工程[2]等。我国的植物数据库建设始于20世纪80年代[3],各种专门性数据库查询系统陆续出现,如中国科学院昆明植物研究所的中国植物物种信息数据库系统;徐妍等[4]的野生植物资源信息检索数据库;李月华等[5]的园林植物标本数据库等。这些数据库多为基于 Web 的网络数据库,很少涉及各地区药用植物资源的数据库。
本文正是探究如何应用信息化网络化,使药用植物资源调研的数据更好地为社会生产和科研服务。运用信息技术手段搭建系统的规范的信息检索数据库平台,实现信息优化存储,提高共享查询效率。而且较之传统手工查询而言,在人力、时间上都相对高效快捷,可为药用交易用户对当地市场中药材品种的选择提供一定参考,有效利用药用植物资源提供更好的服务。
2 网站实现所使用的技术介绍
本数据库系统以PHP作为脚本语言,使用了面向对象的开发结构和MVC模式的ThinkPHP框架,采用PHP Storm集成开发环境,并结合MySQL数据库开发的WEB信息检索数据库系统应用(如图1)。
图1 技术结构图
其中ThinkPHP框架是一个兼容的轻量级国产PHP开发框架。它从Struts结构移植而来并进行了改进,融合了Struts的思想和标签库、RoR的ORM映射和ActiveRecord模式,具有兼容性强、简单易用的特点[8]。MySQL是目前比较流行的开源数据库,被广泛地应用在各个领域,其优点在于较高的可靠性、成本低、速度快[9]。
本数据库系统主要采用面向对象的开发结构和MVC模式:模型(M),Model类来完成模型的定义;控制器(C),应用控制器和Action控制器都承担了控制器的角色;视图(V),模板的实现是和框架无关的[7]。
3 植物资源数据库检索系统设计
3.1 需求分析
1)用户进入网站首页,浏览管理者定期发送的植物新闻;通过快捷入口,进入某类植物分类信息进行查看。
2)植物检索:提供四种植物信息检索方式,药材拉丁名检索、药材中文名检索、药材别名检索、药材所属植物名检索。
3)植物信息查看:点击查看植物信息详情,包括所属种群分类、中药别称、入药部位、药性分类、性味归经、功能主治、用法用量、炮制技术、主要产地、药材照片等信息。
4)药膳:通过友好的界面展示药膳的具体介绍、分类信息和举例。
5)管理员模块:管理员通过管理员登录界面登陆后可对植物信息进行及时的更新及管理。
3.2 数据库系统总体设计
数据库系统的开发主要包括三个步骤:药膳资源信息的收集与整理、MySQL数据库的设计与建立和WEB应用的开发。根据需求分析,药膳植物资源信息检索数据库WEB应用具有数据库资源管理、数据库输出、植物图片管理等主要功能。根据需求分析为设计数据库系统WEB应用建立总体的方案。WEB应用的功能模块(如图2)。
图2 系统功能模块
WEB应用中的信息检索模块有精确检索与模糊检索两种不同的检索方式。精确检索对用户键入的关键字进行数据库检索,检索与关键字完全匹配的信息并将检索结果返回,返回的值如果有则是唯一。模糊检索对用户键入的关键字进行数据库检索时不是信息的完全匹配,只要数据库相应的信息中包含关键字的一部分,就会将此条信息返回,所以模糊查询的查询结果不唯一。
信息显示模块是将数据库信息以某种排列方式展现给用户,方便客户的查阅。
用户后台由数据库管理员来负责操控,实时管理和更新数据库中的数据。管理员可以通过网络连接数据库,应用数据库后台应用的数据库信息维护功能对数据库进行维护,达到植物资源信息同步扩充、维护与更新的目的。
4 植物资源数据库检索系统开发
4.1 数据库设计
根据需求分析为数据库检索系统建立数据库表。表以及表的用途描述(如表1)
药用植物资源主要信息表(ag_drugs)使用自动递增的INTEGER类型的编号作为主码,来标识每一条植物的主要信息,以便于对植物信息进行检索。药用植物所属植物表(ag_plant)使用药用植物主要信息表编号作为外码,来自植物资源主要信息表(ag_drugs),来标识每一条药膳信息。每条药用植物所属植物信息包含对药用植物所属植物说明,便于系统进行查询工作。
药用植物图片表(ag_picture)使用药用植物中文名作为外码来自植物资源主要信息表(ag_drugs),来标识每一条植物及对应中药材图片。本数据库将植物图片存于计算机硬盘某个专有文件夹中,仅将图片的本地链接存于数据库。这种方法能加快数据库的查询速度,减少数据库负荷。为了达到预期目标,要求图片的大小为尺寸一般为410*290像素。
5 植物资源数据库检索系统应用
5.1 植物信息检索模块
植物资源信息检索主页,数据库系统页面顶部部分,有信息检索的目录项:信息检索、浏览数据库、植物图片、药膳。
点击目录项的信息检索之后来到信息检索的主界面(如图3)。一共有四种检索方式供用户选择,并且可以选择精确检索或者模糊检索。
点击目录项的“浏览数据库”,可以进入数据库全部信息列表页面。此页面以列表的形式将数据库中全部植物资源信息呈献给用户。这个列表包含植物资源科拉丁名、科中文名、种拉丁名、种中文名、食用部位等简要信息。点击右侧的查看可看到植物详情(如图4):
点击目录项的“植物图片”按,可进入数据库内存储的所有植物资源图片列表页面。植物资源图片列表采用分页显示的方式,每一页面显示9张植物资源缩略图片。点击缩略图,即可进入对应植物资源的详细信息页面。
点击数据库系统右侧的“药膳”按钮,可进入药膳介绍资源信息列表。
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] 匡导球.中国出版技术体系及其发展历程[J]. 南京社会科学,2009(06).
[4] 徐妍,臧绍刚.野生植物资源信息检索数据库的建立和使用[J].山地农业生物学报,19(6):457--459,2000.
[5] 李月华,陈之欢,高润清.园林植物标本数据库的研究[J].北京农学学报,2000.15(3):23-26.
[6] 田兴军,张慧仁,张立新. 江苏植物资源信息系统[J].植物研究,2002,22(1):125-128.
[7] 戴一平.MVC设计模式在PHP开发中的应用[J]..计算机与现代化,2011(3).
[8] 百度百科.ThinkPHP[DB/OL].http://baike.baidu.com/view/908071.htm, 2015-12-10.
[9] 肖维明. 基于PHP+MySQL的网站开发[J].物流工程与管理,2009(6).