基于MySQL学生宿舍管理系统的设计与实现.docx

上传人:b****5 文档编号:6756703 上传时间:2023-01-10 格式:DOCX 页数:55 大小:1,016.32KB
下载 相关 举报
基于MySQL学生宿舍管理系统的设计与实现.docx_第1页
第1页 / 共55页
基于MySQL学生宿舍管理系统的设计与实现.docx_第2页
第2页 / 共55页
基于MySQL学生宿舍管理系统的设计与实现.docx_第3页
第3页 / 共55页
基于MySQL学生宿舍管理系统的设计与实现.docx_第4页
第4页 / 共55页
基于MySQL学生宿舍管理系统的设计与实现.docx_第5页
第5页 / 共55页
点击查看更多>>
下载资源
资源描述

基于MySQL学生宿舍管理系统的设计与实现.docx

《基于MySQL学生宿舍管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于MySQL学生宿舍管理系统的设计与实现.docx(55页珍藏版)》请在冰豆网上搜索。

基于MySQL学生宿舍管理系统的设计与实现.docx

基于MySQL学生宿舍管理系统的设计与实现

题目基于MySQL学生宿舍管理系统的设计与实现

摘要

发展至今天,大学校园管理学生公寓涉及的信息内容越来越复杂,若仅仅依靠人工对学生宿舍的各项信息进行管控将会面临巨大的工作量,需要耗费更多时间、聘用更多工作人员,增加了管理成本。

此外,依靠人工管理学生公寓难免在会工作中出现疏忽,若在管理体系中引入计算机技术,开发学生宿舍管理系统,一切问题均将迎刃而解,信息管理更加高效、准确。

前台应用程序和后台数据库共同构成了学生宿舍管理系统。

后台数据库也是整个系统运行的基础,因此需要具备较高的稳定性。

除此之外,数据也要保持高度完整一致。

前台应用程序和顾客之间直接交互,为了更好满足用户需求,界面简洁、操作简单显得尤为重要。

工作人员将数据传输至数据库,系统可自主运行,实现管控。

在本文设计当中,选用MySQL开发后台数据库,运用PyCharm对前台应用程序进行开发。

利用该系统可以对学生信息、学生公寓、访问对象等进行管理,以稳定安全的后台数据库为基础,以简洁易于操作的应用程序为工具,改善当下学生宿舍管理工作。

关键词学生宿舍管理PythonMySQL数据库PyCharm

TitleDesignandImplementationofManagementSystemforStudents'Dormitory

basedonMySQL

Translate

Nowadays,thestudentapartmentinuniversitycampushasalargeamountofdataandcomplicatedinformationmanagementcontents.Itwillbeverytiringtoinquireandmanagestudentinformationandapartmentinformationoncampusbymanualwork.Itnotonlywastesalotofmanpowerandmaterialresources,butalsoispronetoerrors.Onesoftwarenotonlysavesmanpowerandmaterialresources,butalsosavesvariousinformationforthemanagementofstudentapartment.Itisalsomoreconvenienttograspandoperate.

Theforegroundapplicationandthebackgrounddatabasetogetherconstitutethestudentdormitorymanagementsystem.Thebackgrounddatabaseisalsothebasisoftheentiresystemoperation,soitneedstohaveahighstability.Inaddition,thedatamustbehighlyconsistent.Thefront-endapplicationinteractsdirectlywiththecustomer.Inordertobettermeetuserneeds,asimpleinterfaceandsimpleoperationareparticularlyimportant.Thestafftransmitsdatatothedatabase,andthesystemcanrunautonomouslytoachievemanagementandcontrol.Inthedesignofthisarticle,MySQLwasusedtodeveloptheback-enddatabase,andPyCharmwasusedtodeveloptheforegroundapplication.Thissystemcanbeusedtomanagestudentinformation,studentapartments,accessobjects,etc.Basedonastableandsecureback-enddatabaseandasimpleandeasy-to-useapplicationasatool,itimprovesthemanagementofstudentdormitories.

KeywordsstudentdormitorymanagementPythonMySQLdatabasePyCharm

1系统分析

1.1系统开发背景

步入二十一世纪以来,科技发展日新月异,计算机技术日渐成熟,逐渐被各个行业所引入,扮演的角色也越来越重要。

针对各行各业逐渐开发出相匹配的专用系统,涵盖了教育、文化、科研、新闻、金融等广泛领域,吸引了庞大的用户群体。

日益增加的用户需求促进了数据库技术的发展,呈现在用户眼前的功能更加丰富,更加智能。

学生宿舍管理是学校舍务工作的重要内容。

对于很多学校而言,对学生宿舍进行管理主要依靠舍管人员手工记录信息,对于生源较少的学校尚为适用;随着国内教育行业的兴起,办学规模越来越大,生源越来越多,仅依靠人工管理信息很难满足实际需求。

若需要查询某条记录时,由工作人员在庞大的数据信息中翻找,需要耗费大量时间,效率及其低下。

若在学生宿舍信息管理体系引入计算机系统,将会大大降低信息管理的复杂程度,效率更高、管理成本更低,适应当下学校的需求。

1.2系统需求分析

随着科技的不断进步,学校生源越来越广,宿舍管理系统的诞生是顺应时代发展。

在该章节,将针对宿舍管理系统的发展历程进行系统分析,结合现阶段发展状况,证实本文设计地意义所在;并在现有研究基础上做出创新性改变,与科技发展相适应,开发安全、稳定、简洁、高效的宿舍管理系统,更好的满足当代校园需求。

前台用户界面和后台数据库共同构成了学生宿舍管理系统。

后台数据库也是整个系统运行的基础,因此需要具备较高的稳定性。

除此之外,数据也要保持高度完整一致。

前台应用程序和顾客之间直接交互,为了更好满足用户需求,界面简洁、操作简单显得尤为重要。

工作人员将数据传输至数据库,系统可自主运行,实现管控。

在该设计中,选用Python语言用于前台界面开发,运用MySql开发后台数据。

1.2.1功能需求

(1).基本功能需求

开发系统时要站在用户的角度思考,系统功能要与用户实际需求相贴合,设计简洁的交互界面易于操作。

以下几项是良好的宿舍管理系统所需要具备的功能:

1.系统需要建立密码机制,密码和账号相匹配才可进入系统。

2.系统需要开发权限机制,普通用户、管理员以及学生分别掌握不同的操作权限,学生可登录系统查看寝室相关信息,管理员可以对信息进行管控。

3.系统需要开发学生信息登记存储功能,包括寝室的入住、转换、退寝等信息都应被登记存储。

4.系统需要开发信息查询功能并进行实时统计。

5.系统需要开发维护信息功能,若学生信息发生变更可满足变更需求。

6.系统需要为超级管理员设立额外权限管理系统运行,例如账户增删功能等。

(2).功能模块

宿舍管理系统需要具备下列功能:

楼栋管理、宿舍管理、信息变更、信息维护等。

图1-11.1所示为功能模块:

图1-11.1系统基本功能模块图

1.2.2性能需求

1.系统安全性

简化学校的宿舍管理体系是开发该系统的意义所在,为了保障系统安全稳定运行,需要设立一个超级管理员,普通用户在注册登录时,相关信息需要得到超级管理员审核,避免不法用户混进系统。

2.数据库选择

系统运行时涉及大量数据,学生的各项信息、教职工信息均会发生相应变动,综合考虑,MySql更为适用。

1.3可行性分析

1.3.1经济可行性

系统的开发离不开资金支持,因此需要对经济可行性做出分析。

首先分析支出费用,购买机器设备、聘用员工、设备维护等耗费的资金都需要考虑在内;其次,分析系统获得收益。

学生宿舍管理系统规模较小,需要投入的启动资金也就很少,系统的运行仅需要电脑一台,打印机一台即可。

而引入了学生宿舍管理系统,舍管人员的工作量将被大大削减,管理效率更高,出现失误的概率更低,管理体系更加完善。

1.3.2技术可行性

从技术层次分析该项目是否可行,明确系统选用的硬件设备和具有的软件技术能否满足用户需求。

除此之外,负责系统开发的员工水平也非常重要,做为一名长期在学生宿舍生活的电子信息工程专业的学生,对学生宿舍管理模式有着较深的了解,在数据库设计领域也有着扎实的基础。

总结:

综合上述分析,开发宿舍管理系统是顺应当代需求,具有较大的潜在用户群体,具有较高的可行性。

利用系统实现学生信息输入、变更、输出、打印以及查询等也不存在较高的难度。

若在技术层面有更多可行性,应将学生信息的浏览与查询功能开发的更加细致、强大,配有多种查询方式,例如根据专业查询、根据学号查询、根据学籍查询等等,简化工作人员的查询环节,提高管理效率。

1.4系统的开发平台及开发工具

在本文设计当中,选用PyCharm作为开发平台,选用MySQL作为数据库,将网站设计为三层结构,依次为表示层、业务逻辑层、数据处理层。

1.4.1开发工具PyCharm

PyCharm实际上属于PythonIDE中的一种,用户选用该系统进行Python语言开发配备一整套较为高效的工具,例如调试、文件管理、智能提示、自动完成等等,效率更高。

除此之外,该IDE还具有部分高级功能,支持在Django、GoogleAppEngine,更令人关注的是,PyCharm支持IronPython(一种Python语言,适用于NET和Mono)。

PyCharm开发的初衷是用于Python语言开发,发展至今天已经成为具有较高影响力的多平台自由集成开发环境(IDE)。

PyCharm本身并不具备完善的功能,属于一种开发平台,然而由于相关插件的支持致使该平台功能越来越丰富,具有较高的灵活度,也吸引很多软件开发商开发在自身IDE时选用PyCharm为框架。

PyCharm具有以下特征:

(1)编码协助

该平台提供的编辑器支持编码补全,代码片段,代码折叠、代码分割,智能化程度较高,用户进行编码工作更加高效、便捷。

(2)项目代码导航

开发者选用该IDE可快速实现文件切换导航。

快捷键的设立也大大提高了操作效率,用户选用该方式切换文件更加迅速。

(3)代码分析

对开发者编写的编码语法可进行智能检测,错误高亮,代码快速补全意见,对编码进行优化,智能化程度较高。

(4)Python重构

开发者在项目范围内可更改名称,提取方法/超类,导入域/变量/常量,移动和前推/后退重构。

(5)支持Django

自带HTML,CSS和JavaScript编辑器,促使开发者利用Django框架进行Web开发更加快速便捷。

除此之外,还对CoffeeScript,Mako以及Jinja2有着较高的支持度。

(6)支持GoogleApp引擎

支持两种运行环境,开发者可在Python2.5和2.7之间选择,开发适用于GoogleApp引擎的相关程序,同时可对例行程序做出部署。

(7)集成版本控制

登入,录出,视图拆分与合并--所有这些功能都能在其统一的VCS用户界面(可用于Mercurial,Subversion,Git,Perforce和其他的SCM)中得到。

(8)图形页面调试器

自带图形页面调试器,开发者可利用该调试器对Python和Django相关测试程序以及单元进行调整,自带断点,步进,窗口以及评估表达式。

(9)集成的单元测试

开发者可将测试文件运行于文件内,单个测试类,一个方法或者所有测试项目。

(10)可自定义、可扩展

可绑定了Textmate,NetBeans,Eclipse&Emacs键盘主盘,以及Vi/Vim仿真插件。

1.4.2数据库MySQL

(1).MySQL概述

MySQL数据库适用于规模较小的管理系统,由dMySQLAB公司所开发。

发展至今天,MySQL已经吸收了庞大的用户群体,被互联网上很多小型网站所应用。

该数据库体积较小、运行速度快、源码对外开放,赢得了很多中小型网站的喜爱,选其作为网站数据库成本也较为低廉。

(2).MySQL特性

1.有C、C++两种语言编写,可通过多种编译器进行调试,源代码可进行移植。

2.支持多种操作系统,较为常见的包括AIX、P-UX、MacOS、OS/2Wrap、Windows等等。

3.将API提供给C、C++、Eiffel、Java以及Python等多种编程语言。

4.可实现多线程,CPU资源分配利用更加充分。

5.在SQL的算法基础上做出优化,查询速度得到改善。

6.不仅可作为应用程序使用,也可被视为一个向其他软件库提供更多语言支持的库,命名数据表和数据列应用较为广泛的中文编码有GB2312、BIG5,日文编码的Shift_JIS等。

7.数据库的连接方式变得丰富,包括TCP/IP、ODBC和JDBC。

8.提供的管理工具可用于管理、检查,并对数据库操作做出优化。

9.数据可处理庞大信息量。

(3).MySQL应用

将MySQL和Oracle、SQLServer等大型数据库相比较,MySQL的规模更小,功能较少,但是凭借着运行快速以及开源代码等优点依然广泛受到大家喜爱。

MySQL所具有的功能已经完全可以满足中小型企业的需求,因为开放源码,企业引用的成本也被大大削减。

1.4.3三层架构技术介绍

三层架构顾名思义就是将业务应用划分为三部分,依次为:

表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL),与“高内聚,低耦合”的开发理念相符合。

该架构展现出下列特征:

无论是前期开发还是后期应用,三层架构都展现独特优势。

三层结构与当下系统开发趋势相吻合,员工之间相互协作、负责各自的岗位,开发效率大大提升。

单层或双层应用在开发时,对开发人员的能力要求很高,只有深层理解系统才具备开发的能力;而三层应用的开发则降低了对开发人员的要求,仅部分人深层掌握系统即可,适合与各种人才相协作,开发难度被大大降低。

除此之外,三层架构对下列功能具有较高的支持度:

支持RemoteAccess(远程访问资料),远程数据库的存取可通过互联网实现;HighPerformance更好的解决了集中式运算,降低了主机需要承载的运算负担,提高运算能力的方式与分布式计算具有较高的相似度;Request由Client端发出,经AppServer和DataBaseServer协同完成,效率更高,削减了处理时间,该功能适用性不强,理论可行,因为应用不广泛,没有很深的理解,在此不多做赘述。

1.5实现系统的平台

1.5.1系统环境

(1)、系统软件环境

(1)服务端

操作系统:

Linux

数据库系统:

MySQL

(2)客户端

操作系统:

适用于各种平台

开发工具:

PyCharm,NavicatPremium

开发语言:

Python

(2)、系统硬件环境

(1)服务端:

CPU:

酷睿四核,内存4G,硬盘500G;

(2)客户端:

Pentium1.6GHz以上CPU,512MB以上内存;

(3)网络配置:

百兆模式或以上。

1.5.2后台数据库选用

经综合分析,MySQL数据库更适用于该系统,MySQL的规模较小、运行速度较快、成本更低,由MySQLAB公司开发设计,后期被Sun公司重金收购,现在所有权掌握在Oracle公司手中。

发展至今天,MySQL已经吸引了庞大的用户群体,被很多中小型网站所应用。

该数据库体积较小、运行速度快、源码对外开放,选其作为网站数据库成本也较为低廉,可满足该系统需求。

1.6本章小结

本章节对系统的发展历程做出了简单概述,针对需求、可行性进行了系统分析,对开发平台及工具等也做出了解读。

2.系统总体设计

2.1数据库设计

数据库设计首先需要对用户的实际需求做出调研,综合考虑选择合适的数据库管理系统,在此基础上对数据库的结构进行设计、建立。

数据库是系统运行的基础,也是最为主要的核心技术。

开发系统是由多个阶段共同组成,较为复杂,而数据库设计作为重中之重,显然也存在较大难度,所以最佳设计需要在反复探索的过程中不断修改精进。

数据库所涉及的数据对象之间要形成相匹配的运行关系。

2.1.1数据库设计概念

对数据库进行设计通常被人们划分为以下六个环节,依次为需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库开发、数据库运行与维护。

概念结构设计实际上也是针对数据库建立相应模型,只不过该模型依托于信息世界,E-R模型是现阶段应用较为广泛的模型,由P.P.S.Chen率先提出并不断完善。

概念结构设计需要以需求分析报告作为设计基础,依托相应方法将其建立为概念模型,该模型是抽象的、不依赖任何设备,本质上也是一种数据模型。

概念模型的创建有效地转移了设计者的注意力,无需在复杂实现细节中投入更多精力,专注于信息组织专构设计,提高了开发效率。

经需求分析得知可以总结出以下内容;

学生实体:

需要将学生属性显示出来,包括姓名、性别、学号、专业以及入住信息等等;

宿舍实体:

需要将宿舍属性显示出来,包括寝室需要、所属楼栋、寝室规模、开放时间等等;

楼栋实体:

需要将楼栋属性显示出来,也就是楼栋各项信息,包括楼栋序号、所在区域等等;

用户实例:

需要将宿舍用户属性显示出来,也就是用户各项信息,包括用户账号、身份、联系方式、登录记录等等;

角色实例:

用于显示角色的属性,包括角色名,拥有权限等

权限实例:

用于显示权限的属性,包括权限名,对应请求路径等

拜访者实体:

需要将拜访者属性显示出来,包括姓名、单位、拜访对象、拜访时间等等。

2.1.2E-R模型设计

根据实体设计,可以得到各个实体和部分子系统E-R图。

学生实体图如图2-1所示。

图2-1学生实体图

宿舍实体图如图2-2所示。

图2-2宿舍实体图

楼栋实体图如图2-3所示。

图2-3楼栋实体图

用户实体图如图2-4所示。

图2-4用户实体图

角色实体图如图2-5所示。

图2-5角色实体图

权限实体图如图2-6所示。

图2-6权限实体图

拜访者实体图如图2-7所示。

图2-7拜访者实体图

宿舍管理系统全局E-R图如图2-8所示。

图2-8宿舍管理系统E-R图

2.2数据库的逻辑设计

逻辑设计在数据库设计环节具有重要意义,也是前期设计阶段的主要内容。

逻辑设计将会理清各个实体之间的关系,对实体做出进一步规范。

物理设计涵盖了数据库产品的选择、实体属性的明确,数据的大小、精度、属性等等,是数据库设计后半阶段的主要内容。

数据库主要在以下两个方面得到了很好的反映:

数据库逻辑设计:

逻辑结构在设计过程中与DBMS处于相互独立状态,针对业务逻辑展现出良好的反映。

数据库物理设计:

该部分设计的开展需要建立在逻辑结构的基础上,DBMS的选择需要参照逻辑设计,并设计合适的存储结构、存取方式等。

数据库性能的良好与否均与逻辑设计息息相关,高质量的逻辑设计有利于调优位置。

若逻辑设计出现差错,调优方法并不会改善数据库的性能或者改善效果并不明显。

数据库的逻辑设计需要严格遵守规范化理论,数据库的运行速度将会大大提升,占用储存空间更小,有利于完善数据库的各项性能。

除此之外,数据库在进行逻辑设计时还需要适当突破现有规范规则,也就是所谓的反规范化设计,从而降低数据库中的索引数目以及表的数目,查询速度也将得到显著提高。

当下较为流行的反规范技术有以下几种,依次为重新组表,增加冗余列等。

(1).学生信息表

将学生的各项信息储存。

表2-1学生信息表

字段名

数据类型

数据长度

是否为空

Key

学号

Char

10

N

P_K

密码

Char

10

N

F_K

姓名

Varchar

20

N

手机号

Varchar

11

性别

Boolean

1

专业

Varchar

20

学院

Char

10

N

头像

Varchar

255

宿舍号

Varchar

10

N

状态

Boolean

1

N

创建时间

Datetime

10

N

(2).宿舍信息表

存储了宿舍的基本信息。

表2-2宿舍信息表

字段名

数据类型

数据长度

是否为空

Key

宿舍编号

Char

10

N

P_K

容纳人数

Number

2

N

对应楼栋号

Number

2

N

创建时间

Datetime

10

N

(3).楼栋信息表

存储了楼栋的类型。

表2-3楼栋信息表

字段名

数据类型

数据长度

是否为空

Key

楼栋号

Char

10

N

P_K

对应员工

Varchar

20

N

创建时间

Datetime

10

N

(4).用户信息表

存储了用户的类型。

表2-4用户信息表

字段名

数据类型

数据长度

是否为空

Key

用户名

Varchar

10

N

P_K

手机号

Varchar

20

N

创建时间

Datetime

10

N

密码

Char

10

N

对应角色

Char

10

N

(5).角色信息表

存储了角色的类型。

表2-5角色信息表

字段名

数据类型

数据长度

是否为空

Key

角色名

Char

10

N

P_K

拥有权限

Varchar

20

N

创建时间

Datetime

10

N

(6).权限信息表

存储了权限的类型。

表2-6权限信息表

字段名

数据类型

数据长度

是否为空

Key

权限名

Char

10

N

P_K

对应请求url

Varchar

50

N

创建时间

Datetime

10

N

(7).来访者登记表

存储了来访者登记的基本信息。

表2-7来访者登记表

字段名

数据类型

是否为空

Key

来访者姓名

Char

N

F_K

来访者学号

Varchar

身份证号

Char

N

来访时间

Datetime

2.3模块设计

宿舍管理系统的用户信息均来自校园内部,实际上也是属于公司内部系统。

用户将账号密码在初始页面输入即可完成登录。

内部平台数据库与系统数据库具有一致性,若在内部信息平台对其中的信息进行更改,系统数据库也会实时做出更新。

图2-9内容为系统主要模块:

图2-9系统主要模块UML用例图

2.3.1用户管理模块

管理员在该模块需要拥有更多权限,普通用户输入账号密码登录该模块可进行信息查阅,但无法做出变更。

超级管理员可对用户信息做出变更、增删,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1