(此文档为word格式,下载后您可任意编辑修改!)某高校学生宿舍管理信息系统设计与开发1.引言学生宿舍管理系统对于一个学校来说是必不可少的组成部分。
目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。
而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。
当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。
信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。
21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。
我们针对如此,设计了一套学生宿舍管理系统。
学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。
由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。
这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。
本系统具有运行速度快、安全性高、稳定性好的优点,并且具备完善的报表生成、修改功能,能够快速的查询学校所需的住宿信息。
学生宿舍管理系统对于一个学校来说是必不可少的组成部分。
目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。
而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。
当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。
信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。
21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。
我们针对如此,设计了一套学生宿舍管理系统。
学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。
由于数据库的存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。
这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。
2. 项目资源本系统以Windows操作系统为平台,以Microsoft word及visiual studio开发工具, Access 2003作为数据库,研究开发的网站系统。
2.1 硬件设备(1)服务器端:处理器:Intel Pentium IV 2.0GHz或更高;内存:256MB;硬盘空间:160GB;显卡:SVGA显示适配器(2)客户端:处理器:Intel Pentium 166MX或更高;内存:32MB;硬盘空间:10GB;显卡:SVGA显示适配器2.2 软件环境(1)服务器端:操作系统: Windows XP;网络协议:TCP/IP;Web 服务器:Internet Information Server 5.0;数据库: Microsoft Access;浏览器:Internet Explore 5.0(2)客户端:操作系统:Windows 98/ME/2000/XP;网络协议:TCP/IP;浏览器: Microsoft Internet Explore 5.02.3 软件工具Visiual Studio叫做可视化工作环境,它可以像word一样实使用文字排版,插入图片,flash动画等可视化编辑、HTML 代码编辑的软件包,使得页面没有插件也能够在 IE 浏览器中正确地显示页面的动画。
同时它还提供了自动更新页面信息的功能。
Visiual Studio是一款专业的HTML编辑器,用于对Web站点、Web页和Web应用程序进行设计、编码和开发。
利用Visiual Studio中的可视化编辑功能,可以快速地创建页面,然后双击所要编辑代码的部分即进入aspx.cs编辑页面,方便实现所要的目标。
在可视化界面上,还有工具栏,可以随意摆放你要的控件,减少不必要的麻烦。
这样不仅方便制作网站,而且对网站的设计也很有规律性,也有利于网站制作完成后的系统整合。
3.系统需求分析3.1 业务需求3.1.1业务定义在本学生宿舍管理系统的设计中,使用者仅为学生宿舍的管理员,他通过用户登陆来使用该系统,同时系统的操作都与学生宿舍管理数据库相连接,以确保业务数据的保存,修改,添加。
3.1.2业务流程(1)用户登录用户只需要填写姓名和密码就可以完成登录操作,如果您忘记密码可以点击“忘记密码”按钮跳转到找回密码页面,通过回答问题来找回密码。
如果登录成功则自动跳转到信息查询页面。
(2)找回密码如果您在用户登录页面忘记您的密码,然后点击“忘记密码”按钮跳转到此页面,通过回答提示问题找回密码,找回成功则自动跳转到信息查询页面。
(3)信息查询用户在此可以通过输入宿舍、班级、学号等进行分类查询,查看相对应的学生基本信息。
查询完后可以通过链接跳转到其他页面进行相关操作。
(4)卫生评比本页面主要是对学生宿舍卫生方面的管理,用户可以在此周评分登记,查询以前评分以便统计和评出卫生最佳宿舍。
操作完成后可以通过链接跳转到其他页面进行相关操作。
(5)宿舍管理本页面主要进行对晚归学生的登记管理,还有对入住情况及员工信息的查询。
操作完成后可以通过链接跳转到其他页面进行相关操作。
(6)修改信息用户在此可以通过添加新宿舍和新生信息来修改基本宿舍信息。
操作完成后可以通过链接跳转到其他页面进行相关操作。
图1 业务流程图3.2功能需求3.2.1功能描述本学生宿舍管理系统应提供简单、层次关系明了、清晰的操作界面,使用户一目了然。
尽可能的为用户的录入、查询等功能操作提供方便。
在设计该系统时,应尽可能的贴近学生,便于用户操作。
系统在实现上应该具有如下功能:1.系统要求用户必须输入正确的用户名和密码才能进入系统。
2.系统应提供查询功能,以方便用户对学生基本信息的查询(要实现按多种条件的查询)及楼房信息的查询。
3.系统还应具有添加、修改、删除基本信息的功能。
4.系统应该实现对学生宿舍的卫生、晚归情况等方面的管理。
3.2.2功能组成图2 功能组成图4.系统设计4.1数据库设计4.1.1 系统所需表1.学生信息表:详细登记学生基本信息及学生住宿情况。
2.员工资料表:登记所有管理人员的详细情况。
3.晚归记录表:登记所有宿舍学生晚归的详细情况。
4.卫生评比表:登记各宿舍卫生得分的详细情况。
5.入住管理表:详细登记宿舍入住信息。
6.提示问题表:登记找回密码时所提示问题。
图3 学生信息表图4 员工资料表图5 晚归记录表图6 卫生评比表图7 入住管理表图8 提示问题表4.1.2表间关系图9 表间关系图4.2页面设计4.2.1 用户登录页面布局采用的是表格布局,右边表格中2个标签对应于客户姓名和客户密码,2个文本框用来供客户填写资料,客户点击button1(确认)后即可登录,如果点击button2(忘记密码)将会自动跳转到“找回密码”页面。
Label5用来显示提示语句,当密码或者出错时,将会显示:对不起!您的姓名或密码错误。
左边则是一个控件Calendar,显示当前的日历。
4.2.2找回密码3个标签对应于客户姓名和,提示问题和问题答案,还有两个文本框和一个下拉列表,下拉列表用来显示提示问题,用户可以自己选择。
将DropDownList1的属性中的appendatabounditems改为ture。
并增加一个新的空白项,运行后此项选项的初始值为空。
4.2.3 信息查询页面布局采用的是表格布局,上面是四个HyperLink,分别链接到用户登录,卫生评比,信息查询,修改信息页面,后面的每个页面都有这四个链接。
下面分别是对学生基本信息、班级信息、宿舍信息的查询。
学生基本信息查询:DropDownList1用来显示学生姓名,其数据源为学生信息表中的学生姓名。
DropDownList3用来显示学号,其数据源为学生信息表中的学号,并且新增加了一个空白项。
一个按钮执行查询操作,点击后就会按照这两个条件进行查询,GridView1显示查询到的订单明细。
班级资料查询:DropDownList4用来显示班级,其数据源为学生信息表中的班级。
点击Button2(确定查询)GridView2将显示该班级的所有资料。
宿舍资料查询:DropDownList2用来显示楼号,其数据源为学生信息表中的楼号。
DropDownList5用来显示宿舍号,其数据源为学生信息表中的宿舍号。
点击查询按钮后就会按照这两个条件进行查询,GridView3显示查询到的订单明细。
4.2.4 卫生评比页面上分为卫生评分和评分查询两部分。
卫生评分部分2个标签对应于楼号和宿舍号,3个文本框用来供用户填写,用户点击button1(确认),评分成功后所评分会记录进数据库,Label2用来提示评分是否成功;评分查询部分的设计与上面的查询一样。
4.2.5 宿舍管理本页面分为晚归登记、员工查询和入住查询三部分。
晚归登记中8个label标签的属性中的text分别为姓名、学号、性别、楼号、宿舍号、班级、晚归日期、晚归时间,8个textbox与之对应供用户填写信息,还有10个label与之对应,当信息不匹配时,会显示提示语句。
一个button的text为确定,当客户点击时会运行其中的语句。
Button 下面的label12提示登记是否成功;员工查询和入住查询部分的设计与上面的查询一样。
4.2.6 修改信息页面上分为添加宿舍和添加学生两部分。
这两部分的设计跟上面的晚归登记部分的设计一样。
4.3算法设计4.3.1用户登录public partial class 员工登录 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e) {string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0; DataSource=E:\\考试\\App_Data\\学生宿舍管理.mdb";OleDbConnection conn = new OleDbConnection(strconn); string ygID, ygPa, strSql;ygID = TextBox1.Text.Trim();ygPa = TextBox2.Text.Trim();strSql = "select 姓名 from 员工 where 姓名='" + ygID + "'and 密码='" + ygPa + "'";//OleDbCommand cmd = new OleDbCommand(strSql, conn);DataSet ds = new DataSet();OleDbDataAdapter ad = new OleDbDataAdapter(cmd);//ad.Fill(ds, "员工");if (ds.Tables["员工"].Rows.Count <= 0){Label4.Text = "员工姓名或密码错误";}else{Response.Redirect("查询.aspx");}}}4.3.2找回密码public partial class 找回密码 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0;"+ "Data Source=E:\\考试\\App_Data\\学生宿舍管理.mdb"; OleDbConnection conn = new OleDbConnection(strconn); conn.Open();string sq1;sq1 = "select 提示问题 from 提示问题";OleDbCommand cnd = new OleDbCommand();cnd.Connection = conn;mandText = sq1;DropDownList1.DataSource = cnd.ExecuteReader();DropDownList1.DataTextField = "提示问题";DropDownList1.DataBind();}protected void Button1_Click(object sender, EventArgs e) {string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0;" DataSource=E:\\考试\\App_Data\\学生宿舍管理.mdb";OleDbConnection conn = new OleDbConnection(strconn); string name, kh_question, kh_answer,kh_sq1;name = TextBox1.Text.Trim();kh_question = DropDownList1.Text.Trim();kh_answer = TextBox2.Text.Trim();kh_sq1 = "select 员工姓名 from 员工资料 where 员工姓名='" + name + "'and 提示问题='" + kh_question + "'and 问题答案='" + kh_answer + "'";//OleDbCommand cmd = new OleDbCommand(kh_sq1, conn);DataSet ds = new DataSet();OleDbDataAdapter ad = new OleDbDataAdapter(cmd);//??? ad.Fill(ds, "员工资料");if (ds.Tables["员工资料"].Rows.Count <= 0){Label.Text = "对不起,你的回答错误!请重新选择,然后回答,谢谢!";}else{Response.Redirect("信息查询.aspx");}}}4.3.3信息查询public partial class 查询 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e) {OleDbConnection conn = new OleDbConnection();string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\\考试\\App_Data\\学生宿舍管理.mdb";conn.ConnectionString = strconn;conn.Open();string sql, kh_name, kh_number;kh_name= DropDownList1.Text.Trim() + "%";kh_number = DropDownList3.Text.Trim() + "%";sql = "select * from 学生信息 " +"where 学生姓名 like'" + kh_name +"'and 学号 like '" + kh_number + "'";OleDbCommand cmd = new OleDbCommand();cmd.Connection = conn;mandText = sql;GridView1.DataSource = cmd.ExecuteReader();GridView1.DataBind();}}4.3.4卫生评比public partial class 卫生评比 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){TextBox11.Text = DateTime.Now.ToString();OleDbConnection conn = new OleDbConnection();string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\\考试\\App_Data\\学生宿舍管理.mdb";conn.ConnectionString = strconn;conn.Open();}protected void Button1_Click(object sender, EventArgs e) {OleDbConnection conn = new OleDbConnection();string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\\考试\\App_Data\\学生宿舍管理.mdb";conn.ConnectionString = strconn;conn.Open();string no1,no2,no3,sq1;no1 = TextBox2.Text.Trim();no2 = TextBox3.Text.Trim();no3 = TextBox4.Text.Trim();sq1 = "insert into 卫生评比(楼号,宿舍号,班级,得分)values('" + no2 + "','" + no3 + "','" + class1 + "'," + no1 + "')";OleDbCommand cod = new OleDbCommand();mandText = sq1;cod.Connection = conn;int ok;ok = cod.ExecuteNonQuery();if (ok == 1){Label2.Text = "恭喜您,评分成功!!";return;}else{Label2.Text = "对不起,操作失败!!";return;}}protected void Button3_Click(object sender, EventArgs e) {OleDbConnection conn = new OleDbConnection();string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\\考试\\App_Data\\学生宿舍管理.mdb";conn.ConnectionString = strconn;conn.Open();string sql, kh_name1, kh_ name2;kh_name1 = DropDownList1.Text.Trim() + "%";kh_name2 = DropDownList3.Text.Trim() + "%";sql = "select * from 卫生评比 " +"where 楼号 like'" + kh_name1 +"'and 宿舍号 like '" + kh_name2 + "'";OleDbCommand cmd = new OleDbCommand();cmd.Connection = conn;mandText = sql;GridView1.DataSource = cmd.ExecuteReader();GridView1.DataBind();}}4.3.5宿舍管理public partial class 宿舍管理 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e) {OleDbConnection conn = new OleDbConnection();string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\\考试\\App_Data\\学生宿舍管理.mdb";conn.ConnectionString = strconn;conn.Open();string kh_name, kh_number, kh_sexy, kh_name1, kh_name2, kh_class1, kh_date, kh_time;kh_name = TextBox2.Text.Trim();kh_number = TextBox3.Text.Trim();kh_sexy = TextBox4.Text.Trim();kh_name1 = TextBox5.Text.Trim();kh_name2 = TextBox6.Text.Trim();kh_class1 = TextBox7.Text.Trim();kh_date = TextBox8.Text.Trim();kh_time = TextBox9.Text.Trim();if (kh_name.Length == 0){Label7.Text = "*请认真的填写您的姓名!!"; }if (kh_number.Length == 0){Label15.Text = "*请填写您的学号!!";}if (kh_sexy.Length == 0){Label16.Text = "*请填写您的性别!!";}if (kh_name1.Length == 0){Label17.Text = "*请认真的填写您的所住楼号!!"; }if (kh_name2.Length == 0){Label18.Text = "*请认真的填写您的所住宿舍号!!"; }if (kh_class1.Length == 0){Label19.Text = "*请认真的填写您的班级!!";}if (kh_date.Length == 0){Label20.Text = "*请认真的填写晚归日期!!";}if (kh_qtime.Length == 0){Label23.Text = "*请认真的填写晚归时间!!";return;}OleDbCommand cod = new OleDbCommand();mandText = kh_Sql;cod.Connection = conn;OleDbDataReader rd = cod.ExecuteReader();bool lk;lk = rd.Read();rd.Close()string Sql;kh_Sql = "insert into 晚归记录 values('" + kh_name + "','" + kh_number + "','" + kh_sexy + "','" + kh_name1 + "','" + kh_name2 + "','" + kh_class1 + "','" + kh_date + "','" + kh_time + "')";mandText = kh_Sql;int ok;ok = cod.ExecuteNonQuery();if (ok == 1){Label14.Text = "恭喜您,登记成功!!";return;}else{Label14.Text = "对不起,登记失败!!";return;}}protected void Button2_Click(object sender, EventArgs e) {OleDbConnection conn = new OleDbConnection();string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\\考试\\App_Data\\学生宿舍管理.mdb";conn.ConnectionString = strconn;conn.Open();string sql, kh_number;kh_number = DropDownList4.Text.Trim() + "%";sql = "select * from 员工资料 " +"where 员工ID like'" + kh_number + "'";OleDbCommand cmd = new OleDbCommand();cmd.Connection = conn;mandText = sql;GridView1.DataSource = cmd.ExecuteReader();GridView1.DataBind();}4.3.6修改信息public partial class 修改信息 : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){}protected void Button1_Click(object sender, EventArgs e) {OleDbConnection conn = new OleDbConnection();string strconn;strconn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\\考试\\App_Data\\学生宿舍管理.mdb";conn.ConnectionString = strconn;conn.Open();string kh_name1, kh_name2, kh_number, kh_money;kh_name1 = TextBox5.Text.Trim();kh_name2 = TextBox6.Text.Trim();kh_number = TextBox7.Text.Trim();kh_money = TextBox8.Text.Trim();if (kh_name1.Length == 0){Label17.Text = "*请认真的填写楼号!!";}if (kh_name2.Length == 0){Label18.Text = "*请认真的填写宿舍号!!";}if (kh_number.Length == 0){Label19.Text = "*请认真的填写可住人数!!";}if (kh_money.Length == 0){Label20.Text = "*请认真的填写收费金额!!";}OleDbCommand cod = new OleDbCommand();mandText = kh_Sql;cod.Connection = conn;OleDbDataReader rd = cod.ExecuteReader();bool lk;lk = rd.Read();rd.Close();string kh_Sql;kh_Sql = "insert into 入住记录(楼号,宿舍号,可住人数,收费) values('" + kh_name1 + "','" + kh_name2 + "','" + kh_number + "','" + kh_money + "')";mandText = kh_Sql;int ok;ok = cod.ExecuteNonQuery();if (ok == 1){Label14.Text = "恭喜您,添加成功!!";return;}else{Label14.Text = "对不起,添加失败!!";return;}}5.系统测试与运行本系统主要由宿舍管理员即员工使用,首页就是员工登录页面,登录完成后直接跳转到信息查询页面;如果忘记密码,则到找回密码页面回答提示问题,回答正确后依然跳转到信息查询页面。