基于Web的进城务工管理系统的研究与实现

时间:2022-10-25 08:49:23

基于Web的进城务工管理系统的研究与实现

[摘 要] 设计了一个基于web的农民进城务工管理系统,并成功应用于涪陵农业局的管理中,同时设计了高效的数据备份。本文介绍了该系统的功能、结构、关键技术和数据的备份,及在其他的相关领域中的重大参考价值。

[关键词] 混合查询 进城务工 数据备份

一、引言

随着社会的发展,进城务工的农民越来越多,对农民工的信息也就变得越来越难以管理。农民进城务工管理系统的建设已成为农业局的重点工程。在此系统中,各乡镇的信息员可以增加、删除、修改本乡镇进城务工农民的基本信息,也可以分类汇总本乡镇进城务工农民的数据,区级信息员可以增加、删除、修改本区进城务工农民的基本信息,也可以分类汇总或综合汇总本区进城务工农民的数据,同时可以远程对数据库进行备份,便于对本区的农民工信息进行管理和维护。

本文使用编程语言开发设计了B/S结构的基于Web方式的农民进城务工管理系统,通过实际应用及改进,该系统不仅仅适用于农业局,也可应用于其他的相关领域。本文主要介绍了该系统的功能、结构、实现的主要方法,数据库的备份还原,以及还需要改进和必须注意的一些事项。

二、系统的功能

根据该系统的特点系统,将此系统分为两大模块,即乡镇管理员模块和区管理员模块,乡镇管理员模块包括本乡镇农民工信息插入、修改、删除、分类汇总、个人报表输出打印、混合查询等;区管理员模块包括全区农民工信息插入、修改、删除、分类汇总、综合汇总、增加新管理员、数据库备份等。所有操作都只需在客户端通过Web浏览器进行操作,就能完成其模块体统的各种功能。

三、系统的实现

本进城务工管理系统采用B/S基于Web的三层结构模式。如图1所示:

下面介绍实现该系统的几个关键问题。

1.数据库设计

数据库设计在一个管理系统中起着重要作用。一个设计合理、结构清晰的数据库能减少数据余、提高查询速度、方便更新修改,可以减轻程序的负担,提高程序的执行效率和稳定性。根据进城务工管理系统的要求,本系统主要由以下几个表组成:信息员表、农民工表、携带孩子情况表、生育情况表、变更情况表等组成。

信息员表用于保存信息员的基本信息,主要字段有:用户名、密码、权限和地区;农民工表用于保存进城务工农民的基本信息,主要字段有:编号、姓名、性别、文化程度、行业等;携带孩子情况表用于保存进城务工农民所携带孩子情况的基本信息,主要字段有:编号、姓名、性别、关系、出生日期、身份证号码、就读学校(幼儿园);生育情况表用于保存进城务工农民生育情况的基本信息,主要字段有:编号、时间、孩次、性别、政策内外;变更情况表用于保存进城务工农民变更情况的基本信息,主要字段有:编号、变动项目、更改后内容、变更日期。由于农民工表、携带孩子情况表、生育情况表、变更情况表之间是相关联的,所以在数据库中以编号作为其关联项,在数据库中建立了如下关系图。如图2所示:

2.数据库链接

采用技术链接数据库。添加了许多新的对象和程序接口,如DataSet,DataView,DataReader,DataSetCommand,DataAdapter等,使得对数据库的操作更简单。本系统主要运用了DataSet,DataReader,DataAdapter这三个对象。

(1)DataSet对象。它是的核心,专门用来处理从数据存储中读出的数据,并以离线的方式存在于本地内存中。在DataSet中可包含一定数量的DataTable,且每个DataTable对应一个数据库的Table或View。一般来说,一个对应的DataTable对象的数据表就是一组DataRow与DataColumn的集合。DataTable会负责维护每一数据行保留它的初始状态和当前状态,以解决数据库的并发访问问题。的离线模式减少了对数据服务器的压力。在系统中所有信息基本上都是由DataSet来保存记录的,然后绑定在DataGrid控件显示出来。

(2)DataReader对象。当以浏览的方式查看大量数据时,会占用大量内存,导致性能下降。例如,一个链接(connection)用传统的ADO Recorder对象去读1000行数据库的记录,则必须为这1000行记录将内存分配给这个链接直至该链接的生命周期结束。如果有多个用户在同一时间对同一计算机进行同样的操作,则机器内存将被过度使用。为了解决这些问题,.NET框架提供了DataReader对象,从数据库返回一个只读的,仅能向下滚动的流(Stream),而且当前的内存中仅存一条记录。本系统中对个人报表、分类汇总等页面均用DataReader来读取和操作数据。

(3)DataAdapter对象。通过DataAdapter对象建立、初始化数据表,从而与DataSet对象结合起来在内存中存放数据。DataAdapter对象能隐藏与Connection,Command对象沟通的细节。DataAdapter对象允许将DataSet对象中的数据保存到数据源(Data Souse),也可以从数据源中提取数据。同理,也可对底层数据保存体进行数据的添加、删除或修改操作。本系统用其来完成数据的维护操作。

3.数据库管理系统的安全管理

三农信息系统采用SQL Server 2000数据库管理系统。在整个三农信息系统安全管理中,我们采取了三重安全措施:数据库的备份与恢复;Windows Server 2003的RAID镜像;ghost镜像。

(1)数据库的备份与恢复。三农信息数据库由于其量的庞大性和数据的重要性, 一旦崩溃或者数据丢失, 都是不可弥补的损失。而且, 随着每天信息数据的入库, 数据备份更成为一个重要的安全环节。为了使数据库发生故障后能在最短时间内、最大限度地恢复正常, 主要也就是靠数据备份与恢复技术。

①数据库的备份。为了将系统安全完整的备份,应该在具体执行备份之前,根据具体的环境和条件,制定一个完善可行的备份计划,确保数据库系统的安全。涪陵三农信息系统中,在制定备份计划时,我们主要从以下几个方面来考虑:a.备份的频率:考虑到在整个系统中,农产品的信息在时时变化,以及在农技服务子系统中有大量的问题与回答,因此,我们设置的备份频率为一天。b.确定备份的内容:备份的内容就是要保护的内容。在此系统中,我们所有的信息都是放在“粮油库”、“论坛库”、“信息库”中,因此备份的内容即是这三个库。c.确定备份的介质:在备份中使用何种介质是至关重要的,我们使用的介质是网络硬盘,这样便于我们以后的恢复操作。d.确定使用在线备份还是脱机备份:由于此系统是整个涪陵区几十个乡镇在使用,访问量很大,而且是不定时的,因此我们采用在线备份。在线备份时由于用户的操作会影响数据库备份的速度,所以我们选在访问量教小时的零点备份。

在执行数据库备份操作中,利用SQL Server系统提供的 SQL Server Enterprise Manager来创建备份文件。

②数据库的恢复。数据库的备份是为了以后能够顺利地将破坏了的数据库安全地恢复的工作。但是,备份与恢复相比,恢复的工作尤其重要和艰巨,因为备份时系统是处于正常环境状态,而当进行数据库恢复时,一般而言,系统的环境处于一种非正常的状态。例如,系统的整个硬件失败,或者系统软件瘫痪,或者由于误操作删除了重要的数据等等。

在进行数据库恢复的进程中,系统将自动地进行某些操作,确保数据库安全和迅速地恢复。在恢复数据库文件时,必须确保数据库备份文件是有效的,并且在备份文件中包含了所需要的备份内容。

在执行数据库恢复操作中,利用SQL Server系统提供的 SQL Server Enterprise Manager来恢复数据。

(2)Windows Server 2003的RAID镜像。考虑到三农信息系统是针对涪陵区几十个乡镇开发的,如果服务器出现故障,则整个系统将导致瘫痪,在此期间用户无法访问。因此我们采用了Windows Server 2003提供的基于软RAID,将两台服务器的硬盘做镜像,其中一台服务器被指定为主服务器,另一台为从服务器。客户只能对主服务器上的镜像卷进行读写,即只有主服务器通过网络向用户提供服务,从服务器相应的卷被锁定以防对数据库的存取。主/从服务器分别通过心跳监测线路相互检测对方的运行状态,当主服务器因故障停机时,从服务器马上接管主服务器的应用,网络正常运行,即对访问者来说丝毫不受影响。

(3)Ghost镜像。考虑到可能整个服务器系统全部瘫痪,也就是主/从服务器都因故障而无法启动,我们制定了最后一个安全措施,即Ghost镜像。

在整个系统正常运行的时候,给系统在本地硬盘上作个Ghost镜像,也就是原样复制一个现有的系统,同时我们将此镜像文件复制到移动硬盘上。当本地硬盘也出现故障时,我们可以通过移动硬盘上的镜像文件来恢复,之后再将网络硬盘上的数据库还原到刚恢复的系统中。

4.区信息员管理界面

该界面主要完成了对农民工信息的基本查询、混合查询、个人报表输出打印、各乡镇农民工的分类汇总以及对整个地区农民工的混合汇总、远程备份数据库、录入、修改、删除农民工的信息,以及增加、删除、修改各乡镇的信息员。

在该系统中,由于各乡镇又有各自的居委,在此将乡镇与居委通过id相对应,再绑定到下拉列表框中,这样极大地提高了开发效率。

四、小结

进城务工管理不仅已成功应用与涪陵农业局,而且在其他的相关领域中也有重大的参考价值。本文设计的这个基于Web的进城务工管理系统,非常成功地在涪陵农业局中得以应用。在建设此系统的同时,也必须深切地认识到安全管理的重要性, 从而把该系统管理得更好,让它更好地为涪陵人民、国家建设做贡献。

参考文献:

[1]沈大林 张小蕾:中文Dreamweaver MX/Flash MX/Fireworks MX三合一教程[M].北京:电子工业出版社.第三版,2003.P67~P88

[2]尚俊杰:程序设计[M].北京:清华大学出版社.第一版,2004

[3]龚小勇:关系数据库与SQL Server 2000[M].北京:机械工业出版社.第三版,2004

[4]廖信彦:交互式Web数据库程序设计[M].北京:铁道出版社.第一版,2004

[5]肖金秀 何 鹏 王当文:案例教程[M].北京:冶金工业出版社,2005

[6]苏英如程序设计及应用[M].北京:中国水利水电出版社,2006

[7]尚俊杰 秦卫中:程序设计案例教程[M].北京:清华大学出版社,2005

[8]叶汶华:网页制作教程[M].北京:冶金工业出版社,2004

上一篇:关于成本管理模式的思考 下一篇:论互联网时代网络销售优势的获取