基于MVC2三层架构的培训管理系统的分析与设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于MVC2三层架构的培训管理系统的分析与设计

摘要:介绍了基于MVC2模式的重庆广播电视集团培训管理系统的设计方法和MVC设计模式的三层结构之间的关系,对数据库进行了分析,并以培训计划申报为例,对Model层、Controller层、View层进行了分析与设计。

关键词:MVC2;重庆广播电视集团;培训管理系统

0引言

随着计算机信息技术的发展,计算机网络的应用普及,各大企事业单位广泛采用了计算机信息管理系统的管理方式对本单位的培训工作进行管理。当前,国内企业较少采用规范化的员工培训管理系统,存在培训档案无法统一管理等诸多问题。本文针对重庆广播电视集团培训管理的现状,开发出一个基于MVC2框架的培训管理系统,本系统是基于重庆广播电视集团内网的,B/S模式的,面向全体员工的管理软件。

本系统使用起来效果良好,实现了培训管理工作的网络化、实时化、自动化,同时采用的MVC2框架使得系统具有良好的可扩展性,和可维护性为系统的后一步功能扩展打下了基础。

1关键技术

1.1MVC设计模式

MVC全名是ModelViewController,是模型(Model)、视图(View)、控制器(Controller)的缩写。使用MVC的目的是将M和V的实现

代码分离,从而使同一个程序可以使用不同的表现形式。

Model:包括数据、验证规则、数据访问和业务逻辑等应用程序信息。模型对象是实现应用程序数据域逻辑的应用程序部件。通常,模型对象会检索模型状态并将其存储在数据库中。

View:视图是显示应用程序用户界面(UI)的组件。封装了应用程序的表示层,是呈现给使用者看的信息。

Controller:控制器是处理用户交互、使用模型并最终选择要呈现的视图来显示UI的组件。包括控制流逻辑,控制信息流和应用程序的执行。

MVC设计模式具有耦合性低、重用性高、生命周期成本低、部署快、可维护性高、有利软件工程化管理的特点。

环境下的MVC2与三层架构

MVC2强制实施“任务分离”,在任务分离过程中,应用程序被分成离散的松耦合部件,即应用程序的模型、视图和控制器部件,具有支持丰富的路由机制、测试驱动开发和团队应用程序开发等优点,这使MVC应用程序更易于测试和维护和具有可扩展和可插入性。

MVC2实现了应用系统的职能分工。Model层实现系统中的业务逻辑。View层用于与用户的交互,根据用户操作,调用Controller 层进行处理,通过ASP来实现。Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求,并选择恰当的视图用于显示,同时,它也可以解释用户的输入,并将它们映射为模型层可执行的操

作负责处理用户请求,实现应用程序逻辑,完成所需要的数据处理,并将处理结果返回给View层。

2系统设计与实现

2.1开发环境

本系统利用.NET技术,以C#语言作为开发工具,以VisualStudio2010作为开发平台,采用MVC2框架,以SQLServer2008作为后台数据库,采用了CSS和Javascript作为页面的界面设计工具进行设计,来完成对系统的实现。

2.2系统的结构设计和功能分析

本系统已在集团开始使用,各部门内勤员工通过网络访问登录管理系统,进行培训工作的申报、查询、修改;人力资源中心培训管理人员通过登录管理系统,对单位下属各部门内勤申报的培训相关情况进行审核、修改、发布,并生成相应的报表;普通员工可以通过集团网络访问培训管理系统,查询自己的培训学习情况,浏览发布的培训课程信息。

图1为培训管理系统功能结构。培训管理系统分为培训计划管理、培训信息管理、留言管理、系统设置、学时学分查询、密码设置这六大部分。其中的密码设置和新用户注册是MVC2自带的Membership的功能,培训计划管理、培训信息管理是对培训工作开展的业务进行处理,学时学分查询是员工根据自己的姓名和所在的部门,选择相应的时间段对自己学习的学时和学分进行查询。

2.3数据库设计

培训管理系统的数据库表分为两类,第一类是MVC自带的权限管理的Membership数据表,对注册、权限这些进行分类管理和控制;第二类是为处理培训管理的业务流程建立的数据表。本系统主要涉及到的表:

(1)培训计划表。培训计划编号、主办部门、联系人、联系电话、培训主题、培训目的、培训时间、持续天数、培训地点、主讲人、主讲人简历、培训内容、培训范围、是否对外开放、课程类别、课程等级、学时、学分、培训费用小写、培训费用大写、费用明细、部门意见、填报时间、是否审核、备注。

(2)培训信息表。课程编号、主办部门、联系人、联系电话、培训主题、培训日期、培训地点、主讲人、培训内容、填报时间、是否审核、备注。

(3)培训照片表。照片编号、照片名称、照片类型、照片、课程编号。

(4)组织机构表。机构编号、机构名称、上级机构编号。

(5)员工信息表。员工编号、员工姓名、所在一级部门编号、二级部门编号。

(6)选中员工暂存表。课程编号、选中员工编号、员工编号、员工姓名、所在一级部门名称、二级部门名称。

(7)员工培训信息保存表。员工培训编号、员工编号、员工姓名、所在一级部门、二级部门、培训课程编号、培训主题、学时、学分、是否审核。(8)留言管理表。留言编号、标题、内容、上报部门、

填报时间。

2.4系统界面与实现

培训管理系统的各级管理人员具有不同的权限,只有通过系统登录界面以合法身份登录后,才能进入系统主界面选择相应的操作。登录后呈现出系统的主界面,主要作用是根据不同用户的权限,调用其能访问的各个功能模块以及各个功能模块所要进行的操作。主界面把用户所需要的功能模块调出,把必要的参数传递给各个模块。

对于没有登录的用户,可以浏览培训的课程信息和根据自己的姓名、所在部门查询学习情况;部门管理员登录以后,可以修改个人密码,可以申报培训计划、已开展的培训课程、参训员工申报等。人事部门登录后,进行员工管理、课程管理等工作。

下面通过培训计划申报模块来举例说明系统具体的实现。

2.4.1模型实现

模型封装了应用程序的状态、实现应用程序的功能、应用程序的属性,响应状态查询,提供了访问显示数据的操作。

在Model层里面定义了DepPlanModel实体类,定义了PlanNo、FirDepContactPerson、ContactTelephone等属性,通过对数据库的访问,实现培训计划的Select、Insert、Update、Delete操作。

2.4.2控制器实现

控制器是通过接受来自视图上用户的输入并调用模型和视图去完成用户的需求。在控制器定义了培训计划申报的行为。

在Controllers目录下创建DepTrainUploadCotroller.cs负责处理所

相关文档
最新文档