王 居 儒
(上海医疗器械高等专科学校 教务处,上海 200093)
随着高校办学规模不断扩大,学生人数越来越多,校区越来越多,专业教学计划更贴近社会需要,教材更新的速度越来越快等原因,导致教材在管理、发放等环节都不能够满足现代大学教学需要。另外一个角度,教材采购往往是高校腐败多发地,通过信息化手段以及学生自主选择,能很好地从技术和制度上避免腐败发生。基于以上原因,设计并实现基于B/S架构的高校教材选购管理信息系统。
教材选购系统是一个集任课教师、学生、教材管理员、供应商等多方参与的开放性综合系统,业务环节涉及到教学执行计划教材设定、学生选购、教材管理员汇总、供应商配货、发放等。具体流程见图1。
根据图1业务流程可以看出,该系统是一个综合的信息系统,涉及到其他管理信息系统的信息,将传统学生向学校购买教材,学校向供应商购买教材的模式彻底打破,形成了学生直接向供应商购买教材,学校起到中间桥梁的作用,提供完善的管理服务,保证学生的最大利益。同时,学生有自主选择权,在选择教材的时候,可以看到教材的所有信息,包括价格。学生选购教材结束后,供应商根据订货量进行处理,根据学生宿舍信息,进行教材发放,彻底解决了多校区,发放困难等问题。对于供应商而言,订购数量准确,库存积压小,保障了供应商利益。
对于系统设计而言,该系统涉及到教学计划、选课数据、宿舍信息等重要信息,要确保信息的安全性、数据的唯一性、订购的准确性等。所以,要做好顶层规划设计,资源共享。
根据系统业务流程,将该系统分为以下处理模块,边界界定清晰,权限定义准确,如图2所示。
教材管理员涉及到的业务处理有基础信息维护,包括教材库维护、学生基本信息维护、各角色权限分配、教学计划导入、宿管信息导入、教材订购汇总统计、输出各类报表等功能。
学生涉及到的业务处理有维护自己登录信息、教材选购、退订等功能。
教师涉及到的业务处理有维护自己登录信息、制定开课教材、订购教师用书等功能。
供应商涉及到的业务处理有维护自己登录信息、订购汇总、按照学生为单位生成订单、按照宿舍楼进行订单配送等功能。
考虑到校区分散,各用户在各地点均可以使用的特性,采用B/S架构。应用MVC模式的基本思想,实现该系统。并在学校教务处成功应用。
MVC是一种面向对象思想的开发模式。是Model-View-Controller的缩写,其架构见图3。
(1) Model(模型)。Model表示数据和业务模型部分,是整个系统中的核心部分。Model采用面向对象的思想,将现实世界的对象抽象成为应用程序里的对象,通常一方面封装了这些对象的属性,另一方面封装了对数据的存储和隐含的业务逻辑。
(2) View(视图)。View表示用户视图部分,是用户看到的与之交互的界面。其中并没有真正的处理发生,视图只是作为一种输出数据并供用户选择操作的方式。
(3) Controller(控制器)。Controller表示流程控制部分。它调用相应模型或试图来完成用户的要求,是Model与View之间的枢纽。具体而言,一方面,它能解析和传递View输入的数据,将其转化成系统能够识别的对象,识别用户的操作,解释成对Model特定方法的调用。另一方面,对Model执行的结果和View事件,能够调用相应的View来反馈用户。
如图4所示,该系统设计为B/S架构,应用服务器采用Tomcat5.0,后台数据库为SQL Server 2005。应用JSP[2]技术实现视图的功能,用Servlet[3]技术实现控制器的功能,用JavaBean技术实现模型的功能。
(1) 视图部分。视图是用户看到并与之交互的界面,用Jsp文件定义信息的具体显示形式(表单、表格、标签等)并向Servlet传递用户请求信息。
(2) 控制器部分。控制器接受用户的输入并调用模型和视图去完成用户的需求。Servlet充当控制器的角色,调用doGet[3]方法或者doPost[3]方法,根据HttpServletRequest[3]中参数的取值来决定何种操作,然后根据事件的不同从设置的系统XML[3]文件中读取将要导向的页面。
(3) 模型部分。模型表示数据和业务规则。Model层由多个Java文件封装了高校教材选购管理系统的相应业务逻辑。此外还有一些各模块公用的Bean,例如对数据库的访问等操作。
采用MVC模式的三层架构,将视图与业务逻辑完全分离,一个业务逻辑可以呈现到不同的视图。在视图中其实没有真正的逻辑处理发生,视图上呈现的数据都是来自业务逻辑。作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以最大程度上减少了代码的重复性。控制器本身不输出任何数据和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示模型处理返回的数据。保障了系统的安全性、开放性、可扩展性、可维护性。
目前该系统取得了良好的效果,从根本上解决了教材订购的困难,使学生能够及时准确订购教材、发放教材。对学校教材科而言,将传统繁杂的工作转变为高效便捷的工作。从根本上解决了教材订购产生的腐败问题。得到了学校、学生、供应商一致好评。随着数字化校园建设的逐步深入,高校教材采购系统必然进入更高的阶段,和其他信息系统进行高度融合。
[1] 孙卫琴.基于MVC的Java Web设计与开发[M].北京:电子工业出版社,2004.
[2] 张洪伟.JSP网络开发技术与整合应用[M].北京:清华大学出版社,2006.
[3] SERVLET与JSP核心编程 [M]. 赵学良译.2版.北京:清华大学出版社,2004.
[4] 李维杰,孙乾君.SQL Server 2005 数据库原理与应用简明教程[M].北京:清华大学出版社,2007.
[5] 罗 维.MVC程序设计[M].北京: 中国水利水电出版社,2013.
[6] [美] 埃克尔(Bruce Eckel)著 陈昊鹏 译.Java编程思想[M].4版.北京:机械工业出版社,2007.
[7] [美]昊斯特曼.Java核心技术(卷1)[M].叶乃文,邝劲筠,杜永萍 译.北京:机械工业出版社,2008.
[8] [美] 昊斯特曼.Java核心技术(卷2)[M].叶乃文,邝劲筠,杜永萍译.北京:机械工业出版社,2008.
[9] 周 涛,吕伟臣,廉 颖.SQL SERVER 2005数据库企业级应用[M].北京:清华大学出版社,2008.
[10] 焦晋生.基于MVC架构的WEB设计研究[J].电子科技,2008,21(8):69-72.
JIAO Jin-sheng.School of Computer Science and Technology[J]. Electronic Science and Technology, 2008,21(8):69-72.
[11] 刘 亮.基于MVC的通用型模式的设计与实现[J].中国科学技术大学学报,2010,40(6):635-639.
LIU Liang. Design and actualization of universal MVC pattern[J]. Journal of University of Science and Technology of China, 2010,40(6):635-639.
[12] 施卫峰.基于MVC的分布式作战应用框架研究[J].指挥控制与仿真,2010,32(3):80-85.
SHI Wei-feng. Research on Distributed Operational Application Framework Based on MVC[J]. Command Control & Simulation,2010, 32(3):80-85.
[13] 叶 青.基于Web 的教材选购与管理系统的设计与实现[J].江西师范大学学报(自然科学版),2006,30(2):134-136.
YE Qing. Design and implementation of the college textbook ordering management system based on WEB[J]. Journal of Jiangxi Normal University(Natural Sciences Edition), 2006,30(2):134-136.
[14] 伍劲宇.高校采购管理系统的建设与实践[J]. 实验室研究与探索,2012,31(8):429-431.
WU Jing-yu. Construction and Implementation of the Purchase Management System in Colleges and Universities[J]. Research and Exploration in Laboratory, 2012,31(8):429-431.
[15] 周 辉.MVC设计模式及其在信息系统开发中的应用[J].软件导刊.2012,11(10):120-122.
ZHOU Hui. Application of MVC design pattern in information system development[J].Software Guide. 2012,11(10):120-122.
·名人名言·
治学有三原则:广见闻,多阅读,勤实验。
——戴布劳格林