学生宿舍管理系统论文Word文档下载推荐.docx

上传人:b****6 文档编号:22029617 上传时间:2023-02-02 格式:DOCX 页数:47 大小:534.54KB
下载 相关 举报
学生宿舍管理系统论文Word文档下载推荐.docx_第1页
第1页 / 共47页
学生宿舍管理系统论文Word文档下载推荐.docx_第2页
第2页 / 共47页
学生宿舍管理系统论文Word文档下载推荐.docx_第3页
第3页 / 共47页
学生宿舍管理系统论文Word文档下载推荐.docx_第4页
第4页 / 共47页
学生宿舍管理系统论文Word文档下载推荐.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

学生宿舍管理系统论文Word文档下载推荐.docx

《学生宿舍管理系统论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《学生宿舍管理系统论文Word文档下载推荐.docx(47页珍藏版)》请在冰豆网上搜索。

学生宿舍管理系统论文Word文档下载推荐.docx

减少不必要的人力,物力和财力的支出;

方便宿舍管理部门的工作人员全面地掌握学生住宿情况等目的;

为宿舍管理部门,开发设计专用系统--学生宿舍信息管理系统来进行管理学生宿舍信息,使学生宿舍信息实现标准化的管理和规范化的制度是十分要的。

2开发环境介绍

2.1开发工具MyEclipse

MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。

它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,支持完整的HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。

MyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。

MyEclipse目前支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。

可以说MyEclipse几乎囊括了目前所有主流开源产品的专属eclipse开发工具

2.2数据库MySQL

2.2.1MySQL概述

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。

目前MySQL被广泛地应用在Internet上的中小型网站中。

由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

2.2.2MySQL的特性

1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。

2.支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。

3.为多种编程语言提供了API。

这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。

4.支持多线程,充分利用CPU资源。

5.优化的SQL查询算法,有效地提高查询速度。

6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。

7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径。

8.提供用于管理、检查、优化数据库操作的管理工具。

9.可以处理拥有上千万条记录的大型数据库。

2.2.3MySQL的应用

与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL不支持视图(已经被列入5.1版的开发计划)、事件等)等,但是这丝毫也没有减少它受欢迎的程度。

对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。

3系统需求分析

学生宿舍管理是当代学校中不可或缺的组成部分,在信息化飞速发展的今天,它的出现已经成了一种必然,本文将从宿舍管理系统的历史和现状进行分析,以求证本系统的设计具有实际的意义,并得到它在未来的发展,从而跟上时代的脚步,做出一个高质量的、安全性好的宿舍管理系统,使其不仅能满足学校现在的需要,也能满足将来一段时间的需要。

学生宿舍管理系统的开发主要包括前台用户界面的开发和后台数据库的开发,对于后台数据库的建立和维护要求建立起数据一致性和完整性强、数据安全性好的数据库。

而对于前端应用程序的开发则要求应用程序能提供强大的数据操纵功能,界面友好、使用简单方便等特点。

本系统采用java作为前台用户界面的开发语言,java语言开源而且稳定,后台的数据库采用MySql。

3.1功能需求

3.1.1基本功能需求

主要实现的是学生宿舍管理系统,在设计该系统时,应尽可能的贴近用户,便于用户操作。

系统在实现上应该具有如下功能:

1.系统要求宿管人员输入正确的账号和密码才能进入系统。

2.系统提供学生注册,并上传照片。

3.系统应该提供学生的入住信息及学生注册后的学生个人详细信息

4.系统应提供宿管员的信息查询功能。

5.系统应提供信息维护功能,对学生信息添加,修改,删除。

6.新生可以自己根据学号在入学前查找自己所在的宿舍床位。

7.系统提供宿舍外来人员登记的功能。

8.系统提供记录学生宿舍卫生管理的功能,

9.系统提供宿舍设备管理功能。

3.1.2总体功能模块

宿舍管理系统主要实现的功能有:

宿管员登录、学生注册、治安管理、信息查询、信息维护、宿舍设备管理、外来人员进出登记管理等。

图3.1总体功能模块图

3.2性能需求

3.2.1系统安全性

对于系统为方便学校管理学生宿舍而开发,便于统一管理,对学生信息表进行保护,没有登录的人员不能直接访问学生信息表,用于保护学生的信息。

3.2.2数据库选择

MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQLAB公司。

由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,我选用了MySql作为数据库开发。

3.2.3系统稳定性

本系统采用MVC模式(ModelViewControlle),使应用程序,处理和输出分开,他们各自处理自己的业务,不应一个部分的逻辑业务变动,而导致整体代码的重写。

本系统的代码就是最典型的JSP+servlet+javabean的模式。

4系统设计

4.1数据库设计

数据库设计(DatabaseDesign)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。

数据库设计是建立数据库及应用系统的技术,是信息系统开发和建议中的核心技术。

由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。

4.1.1数据库概念结构设计

从需求分析可以看出,本系统存在以下几个实体:

学生实体:

用于显示学生的属性,包括学生学号、姓名、班级、性别、户籍所在地、所在宿舍号、联系方式。

宿管员实体:

用于显示宿管员的用户名和密码。

学生上传照片的实体:

照片的id、照片的名字、照片对应学生的学号。

导员实体:

用于显示导员的姓名、所带班级和联系方式。

外来人员:

用于显示外来人员的姓名、身份证号、目的、来的时刻、走的时刻。

E-R模型设计:

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

(1)学生实体E-R图如图4.1所示。

图4.1学生实体E-R图

(2)宿管员实体E-R图如图4.2所示。

图4.2宿管员实体E-R图

(3)照片实体E-R图如图4.3所示。

图4.3学生实体E-R图

(4)导员实体E-R图如图4.4所示。

图4.4导员实体E-R图

(5)外来人员实体E-R图

图4.5外来人员实体E-R图

汇总后总体E-R模型图:

图4.6总体E-R图

4.1.2数据库逻辑结构设计

1.学生信息表

存储了学生的基本信息。

表4.1学生信息表

字段名

数据类型

数据长度

是否为空

条件

Key

ID

Int

32

N

P_K

姓名

Char

20

Y

班级

2

性别

4

户籍

100

联系方式

11

2.宿管员信息表

存储了宿管员的基本信息。

表4.2宿管员信息表

int

用户名

50

Uni

密码

30

3.宿舍信息表

存储了学生上传照片的基本信息。

表4.3学生上传照片表

名字

对应学生的学号

4.班主任表

存储了班主任的基本信息。

表4.4班主任表

班主任ID

手机号

所带班级

4.外来人员登记表

存储了外来人员的基本信息。

表4.5外来人员登记表

Varchar

省份证号

varChar

目的

500

日期

Date

进入时间

离开时间

4.2模块设计

宿舍管理系统作为学校内部信息平台的一部分,系统的用户信息来源于内部信息平台。

用户在内部信息平台单点登录,即可直接访问宿舍管理系统。

系统数据库与内部信息平台的后台数据库保持同步,当内部信息平台的用户信息修改后,即可同步信息到本系统数据库。

用户在内部信息平台成功登录后,当访问宿舍管理系统系统时,内部信息平台将用户名等信息传给宿舍管理系统,宿舍管理系统的接口模块将传过来的用户信息进行解析和初始化,得到系统的用户认证,从而是实现系统和内部信息平台的登录。

4.2.1用户管理模块

该模块主要是为宿管员登录设计的,在宿管员登录后进入后台管理页面,注销用户可以重新登录。

用户管理流程图如图4.7所示:

图4.7用户管理流程图

4.2.2宿舍管理模块

该模块主要实现房间管理,包括添加,修改,删除。

模块图如图4.8所示:

图4.8学生信息修改流程

4.2.3信息维护模块

该模块实现的功能是修改学生的信息。

首先查询到要修改信息的学生,然后修改学生的联系方式,所在班级等。

流程图如图4.8所示:

图4.9信息维护流程

4.2.4外来人员管理模块

该模块的功能是实现外来人员的登记和查询,将外来人员的信息保存到数据中。

(1)外来人员登记流程

图4.10外来人员登记流程

(2)查询外来人员信息

图4.11查询外来人员流程

4.2.5学生注册模块

该模块实现学生注册功能。

图4.12学生注册流程

5系统的编码与实现

5.1系统的实现平台

5.1.1系统环境

1、系统软件环境

(1)服务端

操作系统:

MicrosoftWindows7

数据库系统:

MySQL5.5

服务器:

Tomcat5.0

(2)客户端

操作系统:

适用于各种平台

开发工具:

MyEclipse,

开发语言:

Java

(3)开发模式

MVC模式,数据层、控制层、界面分开,其中一个模块逻辑业务的变动不影响到其他层,通过控制层(ActionServlet),将页面的信息保存到数据库,也可从数据库查询到的结果反馈到页面,从而使系统稳定、高效的运行。

2、系统硬件环境

(1)服务端:

CPU:

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

(2)客户端:

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

(3)网络配置:

百兆模式或以上。

5.1.2后台数据库选择及配置

本系统决定用MySQL数据库,原因有几下几点:

(1)MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。

在2008年1月16号被Sun公司收购。

而2009年,SUN又被Oracle收购.目前MySQL被广泛地应用在Internet上的中小型网站中。

(2)从自身特性来说:

1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。

这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。

4.支持多线程,充分利用CPU资源。

5.优化的SQL查询算法,有效地提高查询速度。

6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。

7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径。

8.提供用于管理、检查、优化数据库操作的管理工具。

5.2系统功能模块实现

图5.1宿舍管理系统主界面

5.2.1学生注册模块

一、学生注册

图5.2学生注册界面

代码部分

学生注册界面:

regist.jsp

1、用到的工厂

Factory

2、接口

StudentDAO

获得方法:

StudentDAOdao=(StudentDAO)Factory

.getInstance("

StudentDAO"

);

3、数据库层的方法

//通过id查找学生是否注册过

publicStudentfindById(intid){

Connectionconn=null;

Students=null;

//Employeee=newEmployee();

try{

conn=DBUtil.getConnection();

PreparedStatementprep=conn.prepareStatement(

"

select*fromt_studentwhereid=?

"

prep.setInt(1,id);

ResultSetrst=prep.executeQuery();

if(rst.next()){

s=newStudent();

s.setAge(rst.getString("

age"

));

s.setId(rst.getInt("

id"

s.setName(rst.getString("

name"

s.setSalary(rst.getString("

salary"

s.setSex(rst.getString("

sex"

s.setPwd(rst.getString("

pwd"

s.setPhone(rst.getString("

phone"

}

}catch(Exceptione1){

//TODOAuto-generatedcatchblock

e1.printStackTrace();

}finally{

DBUtil.close(conn);

}

returns;

}

//将没有注册过的学生信息保存到数据库

publicvoidsave(Students)throwsException{

try{

conn=DBUtil.getConnection();

PreparedStatementprep=conn.prepareStatement(

"

insertintot_student(id,name,salary,sex,age,pwd,phone)values(?

?

)"

prep.setInt(1,s.getId());

prep.setString(2,s.getName());

prep.setString(3,s.getSalary());

prep.setString(4,s.getSex());

prep.setString(5,s.getAge());

prep.setString(6,s.getPwd());

prep.setString(7,s.getPhone());

prep.executeUpdate();

}catch(Exceptione1){

}finally{

4、控制层ActionServlet

Action.equals(“/regist”){

intid=Integer.parseInt(request.getParameter("

StudentDAOdao=(StudentDAO)Factory

try{

Students=dao.findById(id);

if(s!

=null){

//学号已被注册

request.setAttribute("

id_error"

"

学号已注册,不能再注册"

request.getRequestDispatcher("

regist.jsp"

.forward(request,response);

}else{

//将没有注册过的学生信息添加到数据库

s=newStudent();

s.setId(id);

s.setName(request.getParameter("

s.setSalary(request.getParameter("

s.setSex(request.getParameter("

s.setAge(request.getParameter("

s.setPwd(request.getParameter("

s.setPhone(request.getParameter("

dao.save(s);

//为用户新建一个用来保存文件的文件加

Stringpath=

getServletContext().getRealPath("

upload"

Filefile=newFile(path+"

//"

+"

pic_"

+id);

if(!

file.exists())

file.mkdirs();

HttpSessionsession=

request.getSession();

session.setAttribute("

s"

s);

request.setAttrib

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

当前位置:首页 > 高中教育 > 数学

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

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