APP下载

基于MVC的高校毕业论文管理系统研究

2013-11-30曾俊国

成都工业学院学报 2013年2期
关键词:设计模式毕业论文视图

曾俊国,罗 刚

(成都工业学院 教务处,成都 610031)

罗刚(1968- ),男(汉族),四川安岳人,教授,硕士,研究方向:控制工程、高校教学管理与研究。

基于MVC的高校毕业论文管理系统研究

曾俊国,罗 刚

(成都工业学院 教务处,成都 610031)

为克服用传统方法设计及开发出的毕业设计(论文)管理系统耦合度高、重用性低、部署和后期维护困难等缺点,提出了基于MVC的Web软件开发方案。阐述了MVC思想内涵、MVC与传统三层架构的联系与区别;通过分析毕业设计(论文)管理系统的功能和工作流程确定基于MVC的系统体系架构;给出了部分系统功能的实现过程。系统试运行良好,易于维护和功能扩展,重用性高,软件部署方便,满足高校教务管理信息化需要。

MVC;高校;教务管理;信息化;毕业设计(论文)

高校校园信息化首先是教务管理信息化,作为整个高校日常教学运行的引擎,教务管理系统在高校日常管理活动中具有重要作用。目前,国内很多高校对毕业设计(论文)的管理还未实现信息化,毕业设计(论文)管理系统作为教务管理系统的重要组成部分,对其进行研制以及结构的优化、性能的提升一直是各高校研究的重要课题。运用传统方法设计的毕业设计(论文)管理系统不仅存在开发周期较长、难度大、效率低、各组件之间耦合度较高等弊端,而且软件部署慢、可重用性低、后期维护困难。笔者利用时下比较流行的、多用于Web开发的MVC技术实现了系统数据共享与交互,实现毕业设计(论文)管理过程中的指导教师拟定题目,学校、院(系)及教研室审核题目,学生网上选题,学生毕业设计(论文)文档提交,指导教师评阅,院(系)推荐优秀论文等一系列工作;在此基础上还可实现学生与指导教师对同一篇论文的在线编辑与点评,达到及时、直接的师生间交互。

图1 MVC各部分的关系及功能

1 MVC简介

1.1 MVC思想的定义

图2 MVC与传统三层结构的对应关系

目前各行各业几乎都开发研制了适合各自领域的信息管理系统,虽然它们功能不尽相同,但总的说来不外乎有三大功能:输入、处理和输出功能,基于这一信息管理系统的共性,MVC应运而生。MVC(Model View Controller)是一种软件设计典范,它是模型(Model)、视图(View)和控制(Controller)的缩写,其目的是实现Web系统的数据层和表示层(业务逻辑)的分离。其中Model层主要负责实现系统中的业务逻辑;View层主要负责与用户交互; 而Controller层则是模型与视图之间的桥梁,其功能表现为接受用户的请求,并将该请求反馈给模型,然后选择恰当的视图将用户请求的结果显示给用户,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。MVC各部分的关系和功能如图1[1]所示。

1.2 MVC与传统三层结构的比较

传统的三层结构包括:DAL(数据访问层)、BLL(业务逻辑层)、UI界面层,它实际上是一种软件架构体系,是为了解决应用程序开发过程中各个业务操作过程中不同阶段的代码封装的问题,以便程序员更加专注地处理某阶段的业务逻辑,因此从这个角度来说,根据实际需要,还可以有四层、五层等架构。

MVC是一种设计模式[2-3],开发人员可以用它来隔离域对象和具体的UI表示。传统的三层结构与MVC相同的是都有一个表现层,而不同点主要表现在其他2层。传统的三层架构中没有定义控制层(Controller),而MVC也没有把业务的逻辑访问看成2个层,这是采用三层架构或MVC搭建程序最主要的区别;传统的三层结构中也有模型(Model)概念,但它与MVC中模型的概念是不一样的,前者是以实体类(对象)构成的,而MVC中模型则是由业务逻辑与访问数据组成的。图2说明了MVC软件设计模式与传统三层结构的关系。

图3 毕业设计(论文)管理系统操作流程图

图4 毕业设计(论文)管理系统体系结构图

1.3 MVC的相关技术

在MVC思想的引领下,出现了很多相关的开发技术,这些技术应用于不同的开发环境。其中,在Java环境下的MVC设计模式有:Jsp+Servlet+JavaBean(EJB)、Jsp+JavaBean(Controller)+JavaBean(EJB)(Model)、Jsp+Struts+JavaBean(EJB);在微软的.NET开发环境下的MVC设计模式有:ASP.NET MVC Framework(ASP.NET MVC)、MonoRail (RC3);在PHP开发环境下MVC设计模式有: Zend framework PHP官方框架、Fleaphp/Qeephp 等国内流行框架、CakePHP 等国外流行框架。ASP.NET MVC在现有的ASP.NET 3.5运行时的基础上提供了一个新的MVC框架,可以在构建Web应用时,做到UI或者视图与业务应用逻辑清晰分离,应用逻辑和后端数据的清晰分离,同时还兼有测试驱动开发模式。ASP.NET MVC框架为Web应用的目录结构定义了一个专用的模式,还提供了一个Controller基类,用来处理发送到实体的请求。目前在微软的Visual Studio 2010 开发平台中提供了专用的MVC模板,利用该模板提供的辅助功能,开发人员可以迅速完成Web应用开发。

2 毕业论文管理系统总体设计

本系统采用.NET框架,利用ASP.NET+C#技术,并结合MVC设计模式来设计完成系统的主要功能,系统开发平台采用微软的Visual Studio 2010。

2.1 系统功能模块设计

毕业设计(论文)是对学生掌握知识和运用知识能力的综合检查。基于MVC的高校毕业论文管理系统实现了毕业设计课题的申报、审核、学生选题等环节的科学高效管理,实现了学生自主选题和教师自主选择学生的网上双向选择,并且可以对毕业设计课题的难度、工作量等进行监控;同时,系统还可对毕业设计进程进行控制,确保指导教师与毕业设计学生实时、高效、通畅地互动,在一定程度上保障了毕业设计的质量。本系统采用B/S模式,并结合先进且较成熟的ASP.NET MVC技术,采用统一的用户认证方式,对不同用户的操作和数据安全进行有效控制,图3为毕业论文管理系统的工作流程[4]。

2.2 系统体系结构

由于毕业设计(论文)管理系统中涉及到的用户权限和业务相对复杂,为了降低层与层之间的耦合度,提高代码复用率,本系统采用MVC模式和基于.NET的B/S架构相结合的体系,系统实现的体系结构如图4所示。

视图层为学生、指导教师、院(系)管理员等相关人员提供对应用程序的访问服务,这层主要是用户通过浏览器向各类用户提供界面上的操作。控制层是接收从视图层传来的用户请求,并且依据不同的请求,调用与之相对应的业务处理对象来执行业务逻辑,获取执行结果,并选择适合的视图组件返回给用户,实现了MVC模式中控制器的功能。模型层主要由业务外观层、业务规则层和数据库访问层组成,其中业务逻辑层由纯业务逻辑类facade类组成;业务外观层负责处理毕业设计(论文)管理过程中具体的业务逻辑;业务规则层主要处理毕业设计(论文)管理过程中的用户权限管理、毕业论文题目审核规则管理、学生选题规则管理等规则。数据访问层为业务逻辑层提供统一的数据服务,主要实现访问数据库中表对象的一些基本操作,可以返回数据集,完成从关系数据库表到实际应用类的映射。

3 基于MVC的毕业设计(论文)管理系统实现及性能分析

本系统的后台数据库采用SQL Server 2005搭建,利用支持MVC设计模式的Microsoft Visual Studio 2010作为开发工具。

3.1 系统实现

笔者以本系统中位于Model层中的数据访问类的实现和View层功能的实现为例,简要叙述基于MVC的毕业设计(论文)管理系统的实现过程。由于篇幅有限,在此只罗列部分关键代码。

using System.Data;

using System.Data.SqlClient;

namespace biyeshej.commonclass

{ public class datalink

{public static string strconn = ConfigurationSettings.AppSettings["connectionString"];

//数据库连接

public static SqlConnection linkdb()

{ SqlConnection cn = new SqlConnection(strconn);

return cn; }

//数据绑定

public void BindDG(GridView dg, string id, string strSQL, string Tname)

{SqlConnection conn = linkdb();

SqlDataAdapter sda = new SqlDataAdapter(strSQL, conn);

conn.Open();

DataSet ds = new DataSet();

sda.Fill(ds, Tname);

dg.DataSource = ds.Tables[Tname];

dg.DataKeyNames = new string[] { id };

dg.DataBind();

conn.Close();}

//修改数据

public void operateData(string strsql)

{ …………. }

//查询数据库表并返回结果表

public DataTable selectDataBaseTb(string tempStrlSQL)

{ …………… }

//判断是否空表

public bool is_emptytable(string tablename)

{ ...... }

//生成用户登录时的随机验证码

public string yanzhenma()

{ ………………. }

//判断某表数据是否可修改

public bool non_edittable(string tbname)

{ ............. }

// 判断是否选题满员(初选时)

public bool is_full(int tmbh)

{ ....................... }

// 判断是否选题满员(教师选学生时、或系部调配时)

public bool is_full_jieguo(string kid)

{ ....................... }}}

系统中的用户登录模型负责接收来自UI层的用户号、用户密码、用户身份等数据,并将这些数据传送到控制层。控制层根据不同用户身份数据,返回相应的不同数据给用户,从而在View层中显示不同的内容,图5和图6展示了根据不同用户身份返回不同的View内容。

图5 系统用户登录界面

图6 系统的View层

3.2 系统性能分析

国内外研究表明:以ASP.NET MVC技术为代表的软件设计框架在Web应用系统中得到广泛的应用。近年来,基于ASP.NET MVC框架结构的Web开发模式由于能够降低耦合度、提高代码的可重用性、减少维护的成本、增强系统的可扩展性,并且能够应用到大型项目的开发之中,因此越来越受到软件开发人员的追捧。同时为方便管理、整合各种数据,便于用户检索数据信息,在设计本系统后台数据库时,笔者采用了大容量存储技术,合理地利用了数据库系统的事务、存储过程、和触发器等技术,优化服务器配置,保证了数据的安全性和一致性,使其满足海量数据的并发访问和存储的需要。

4 结语

本文阐述了MVC设计模式的概念,并应用到高校毕业论文管理系统的设计中,对基于MVC的Web应用程序进行了分析。基于MVC的毕业论文管理系统满足了高校信息化网络平台发展的进一步需求,该设计模式不仅大大缩短了项目开发周期、降低了软件设计难度、节约了成本,而且实践证明该产品具有部署快、后期维护容易、用户使用门槛低等特点,实现了为学生、指导教师提供人性化、一站式的服务,提高了高校毕业设计(论文)管理工作的效率。

[1] 徐朝辉,樊银亭.MVC设计模式在.NET三层结构开发中的研究和实现[J].北京电子科技学院学报,2007(6):70-73.

[2] 段升杰.浅谈软件三层架构开发[J].信息与电脑:理论版,2010(5):44.

[3] 百度百科.MVC设计模式[EB/OL].(2012-09-14)[2013-02-01].http://baike.baidu.com/view/8927765.html.

[4] 曾俊国.基于web2.0的毕业论文管理系统的研究[J].价值工程,2012(11):211-212.

[5] 李可胜.毕业设计管理系统的设计与研究[J].数字技术与应用,2011(8):84-84,87.

[6] 赵伟,王志华.基于.NET和MVC的CMS设计及优化[J].科学技术与工程,2013(1):772-773.

AStudyofGraduate-thesisManagementSystemforUniversitiesBasedonMVC

ZENGJunguo,LUOGang

(Deans Office,Chengdu Technological University, Chengdu 610031, China)

In order to vercome the drawbacks in traditional graduation project management system which has high coupling, low reusability, and difficulties for deployment and post-maintenance, more popular MVC-based web software development program is proposed in this paper .The first part describes the connection and difference between MVC and traditional three-layer architecture; and then analyzes graduation project function and work flow management system to determine the system architecture based on MVC; finally, the realization of some parts of the system function is given. According to the test, the system runs in good condition, is easy for maintenance and function expansion, high reusability, software deployment convenience,and meets the university educational administration information management needs.

MVC;university; educational administration management; informationization; graduation project

2013-02-05

成都工业学院青年基金项目“CEC毕业设计(论文)管理系统”(KY0911023B)

曾俊国(1977- ),男(汉族),四川邻水人,讲师,硕士,研究方向:软件工程、数据挖掘、计算机网络。

TP391

A

2095-5383(2013)02-0018-04

猜你喜欢

设计模式毕业论文视图
“1+1”作业设计模式的实践探索
三维协同设计模式下的航天项目管理实践与展望
“本科毕业论文要不要取消”为何长期无解
交通机电工程设计模式创新探讨
5.3 视图与投影
视图
Y—20重型运输机多视图
SA2型76毫米车载高炮多视图
高等院校音乐本科毕业论文教学和写作的问题透视与思考
我的月子毕业论文