java学生宿舍管理系统论文.docx
- 文档编号:25869847
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:19
- 大小:600.51KB
java学生宿舍管理系统论文.docx
《java学生宿舍管理系统论文.docx》由会员分享,可在线阅读,更多相关《java学生宿舍管理系统论文.docx(19页珍藏版)》请在冰豆网上搜索。
java学生宿舍管理系统论文
安我琨工犬爭
课程设计说明书
课程名称:
软件工程课程设计
题目:
学牛宿舍管理系统
院系:
理学院
专业班级:
数学与应用数学11-1
学号:
学生姓名:
指导教师:
2014年1月02日
理工大学课程设计(论文)任务书
理学院院系信计教研室
学号
学生姓
学土姓存文专业(班级)数学11-1
名
设计题目
小型图书管理系统
设计技术参数
•jdk1.6
•开发工具:
Eclipse
•DBMS:
MYSQL5.5,Navicat8
设计要求
开发一个具有JSP技术的图书信息管理系统,系统分为三个模块且必须具备浏览,查找、修改、添加、删除等功能。
后台数据库是基于mysql建立的。
工
作
量
需求分析,界面设计,数据库设计,数据库连接,子模块和功能设计,各个模块实现窗口的设计,编写系统说明书和实验报告。
工作计划
12月26日需求分析
12月日建立数据库和表及关系表,模块设计
1月1日页面设计及熟悉JSP及其运行环境
1月4,5日程序源代码编写、调试程序并编写Word文档和实现窗
口的截图
1月5日提交课程设计
参考资料
[1]耿祥义,跃平.java面向对象程序设计(第2版)北京:
清华大学出版社.2013.3.
[2]珊,萨日煊.数据库系统概论(第四版)[M]北京:
高等教育出版社.2008.5.
[3]印旻.java与面向对象程序设计课程.北京:
高等教育出版
社.2012.7.
指导教师签
字
教研室主任签字
理工大学课程设计(论文)成绩评定表
学生姓名:
存文学号:
专业班级:
应用数学11-1
课程设计题目:
学生宿舍管理系统
指导教师评语:
成绩:
指导教师:
年月
日
第1章课程设计目的与要求
1.1设计目的
将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、数据
结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。
通过课程设计,学生在下述各面的能力应该得到锻炼:
(1)进一步巩固、加深学生所学专业课程《JAVA语言教程》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。
(2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。
(3)利用所学知识,开发小型应用系统,掌握运用JAVA语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。
(4)对于给定的设计题目,如进行分析,理清思路,并给出相应的数学模型。
(5)掌握面向对象程序设计的法。
(6)熟练掌握JAVA语言的基本语法,灵活运用各种数据类型。
(7)进一步掌握在集成环境下如调试程序和修改程序。
1.2实验环境
硬件要求能运行Windows操作系统的微机系统。
JAVA语言应用程序开发软件使用:
VJAVA系统,或其他JAVA语言应用程序开发软件。
。
1.3设计要求
1.仔细分析设计题目,画出程序流程图,编写程序源代码。
2.积极上机调试源程序,增强编程技巧与调程能力。
3.认真书写课程设计预习报告,课程设计说明书。
4.遵守课程设计要求和机房管理制度,服从指导教师的安排,确保课程设计的顺利完成课程设计容。
第2章课程设计容
2.1课题描述
对于问题的要求,我们可以选择使用链表处理数据,由于处理的数据相对比较多,所以在函数的具体实现时,可以考虑使用函数模板,函数模板会把很多问题的处理变得很容易,例如:
再查找学生信息时,使用姓名查找和学号或宿舍号查找式,其中的两个函数只有函数的参数的类型不一样,功能完全一样,使用模板处理该问题,只需编写一次模板函数,再模板中声明的类型参数“T”,可以代替处理其他变量和返回类型。
如果使用了模板函数的条件下,类的设计最好选用模板类,因为类模板的使用,可以使得类中的某些成员函数、某些数据成员和某些成员函数的返回值能取得任意类型。
但模板的使用有一定的能力要求,如果使用其他的法可以实现上述要求的功能时,模板可以作为一种前进的法,去为程序实现精艺求精。
这样最普遍,可以适时考虑的就是使用链表进行数据的处理,链表是一种比较好且很适宜的法;学生包含有很多信息,最基本的法是创建一个class,对学生信息实现整体的代换,这样不仅便数据处理,也为数据在程序中的录入、存储和显示提供很大的优越性。
各功能的实现可以通过设计一个学生类students,然后将功能函数作为类中的成员函数来处理,这样不仅便以后成员函数之间的调用,也为在编译和调试过程中出现问题和警告错误时便修改。
当整体设计案出炉后,具体的类中成员函数编译就是使用链表为载体来实现的。
首先要创建链表,并将原始数据装入制定的文本文档中,以输入出流的式将数据赋给各链表节点;数据读入程序后,各成员函数就可以根据链表的操作,对其实行查找,删除,添加,排序信息和交换信息等。
查找函数在操作时可运用顺序查找或折半查找,相对比
较而言,在数据较多时使用顺序查找便些,而且便于源代码的编译;在查找函数中要考虑到是否要考虑函数返回值的类型,因为查找函数在以后交换函数中可能会调用查找函数,这样会使交换信息函数显得简明,而且容易在交换时控制变量。
排序和查找函数,因为要使用不同排序或查找法,所以在主函数的实现上,会考虑到使用一个子菜单来指导使用,在按照不同参考变量进行排序或查找时,这时最主要要实现以第一个式的函数的算法思想和代码的编写,这样在编写其他式函数代码时可以参考第一种式,达到简化步骤,节省时间,空间的目的。
2.2系统设计
根据上述要求和思想算法的分析,需要设计一个类students。
由于学生信息包含有学号、姓名、宿舍号、系别等数据,所以设计一个student类来概括学生相关信息。
学生的各相关信息通过使用链表的式将其联系在一起,这样不仅便信息的录入和显示,也便在数据的处理上。
各功能的实现均可在类student中定义各相关的成员函数。
程序运行时,首先提示用户是否进行操作,选择“Y/y”后,进入操作界面,出现功能选择菜单。
首先要进行数据的录入,选择“1.信息录入”选项,这时数据直接通过磁盘文件录入程序中;录入结束后可按菜单中功能选项进行选择操作,如选择“信息排序”功能之后会出现子菜单,提示用户选择排序式“按学号排序”“按宿舍号排序”,这时可以选择一式进行操作,再通过输出与储存函数进行显示或储存。
学生宿舍管理系统的开发主要包括前台用户界面的开发和后台数据库的开发,对于后台数据库的建立和维护要求建立起数据一致性和完整性强、数据安全性好的数据库。
而对于前端应用程序的开发则要求应用程序能提供强大的数据操纵功能,界面友好、使用简单便等特点。
本系统采用java作为前台用户界面的开发语言,而后台的数据库采用
MySql2.2.1功能分析
设计一个实用的小型学生宿舍管理程序,能够对学生宿舍进行管理。
学生的原始信息由磁盘文件进行储存。
在程序的运行中要求能进行增加、删除学生记录、显示记录、查询/检索(依不同关键字,如学号、宿舍号、姓名等)、删除/修改记录等功能,并能运用链表进行动态处理。
具体要求:
1.对学生信息的录入、增加和删除;2.能显示宿舍的相应信息,即根据宿舍号显示宿舍位置,宿舍学生信息等;3.能根据学生信息查询相应的宿舍信息;4.对宿舍管理可以从多面对系统数据进行操作,如:
依据系别、学生姓名、班级等;并且能按各种条件进行组合查询和数据统计,并能按指定顺序进行格式化输出。
2.2.2面向对象设计
各模块之间的调用关系:
本系统分为四个模块:
查找子菜单、信息录入、信息显示、查找功能子菜单
学生信息录入心
学生信息插2
学生信息查询J
按姓名査询*
按学号査询+
按房间号査询+
学生信皂显示
录入后显不
查询时显亍"插入后显示+
该程序的由多种函数实现,每个函数具有不同的功能,主要有主菜单函数,插入功能子菜单函数,查找功能子菜单函数,学生信息录入函数,显示函数,排序函数,插入函数以及查找函数。
在每个区域中会调用不同的函数来实现主要的功能。
比如,在学生显示这个功能里调用显示函数;在插入功能里调用子菜单函数;在显示信息时调用排序函数先对需要输出的信心进行排序,然后再输出;在查找功能里会调用查找函数来进行查找,包括按照性别,学号,姓名,房间号等查询。
222类成员描述
3.1.2根据数据库的有关知识将E-R图转化成对应的关系表
读者(读者编号,读者姓名,读者借书量)其中主键是读者编号。
图书(图书编号,图书名称,图书出版社,图书作者,图书数量)主键是图书编号
读者表3-1
名称
数据类型
长度
允空
说明
rdno
int
10
不允
主键
rdname
char
30
rddbum
int
3
图书表3-2
名称
数据类型
长度
允空
说明
booknumber
int
4
不允
主键
bookname
char
40
bokpress
char
40
bokauthor
char
30
bookcount
int
3
3.1.3类设计
首先设计一个基本类,student类,创建类的具体代码如下:
创建student类
packagesushe;
importjava.sql.Connection;
importjava.sql.ResultSet;
importjava.sql.Statement;
publicclassStudent{
StringstuNo;
Stringname;
StringclassNo;
intdorNo;
publicStudent(){}
publicStudent(StringstuNo,Stringname,StringclassNo,intdorNo){
this.stuNo=stuNo;
this.name=name;
this.classNo=classNo;
this.dorNo=dorNo;
}
publicStringgetStuNo(){
returnstuNo;
}
publicvoidsetStuNo(StringstuNo){
this.stuNo=stuNo;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetClassNo(){
returnclassNo;
}
publicvoidsetClassNo(StringclassNo){this.classNo=classNo;
}
publicintgetDorNo(){
returndorNo;
}
publicvoidsetDorNo(intdorNo){
this.dorNo=dorNo;
}
publicbooleaninsertStudent(){
booleanb=true;
try{
Connectioncon=MySQLConnection.getCon();
Statementstatement=con.createStatement();
Stringsql="insertintostudentvalues('"+stuNo+"','"+name+"','"+classNo+"',"+classNo+
//sql=newString(sql.getBytes("gb2312"),"ISO8859_1");statement.executeUpdate(sql);
con.close();
System.out.println("输入成功");
}
catch(Exceptione){
b=false;
System.out.println("插入数据库遇到异常!
"+e.toString());
}
returnb;
}
publicbooleanselectByStuNo(StringstuNo)throwsException{booleanb=true;
Connectioncon=MySQLConnection.getCon();
Statementstatement=con.createStatement();
Stringsql="select*fromstudentwherestuNo="+stuNo;
ResultSetrs=statement.executeQuery(sql);
if(rs!
=null&&rs.next()){
Stringno=rs.getString
(1);
this.setStuNo(no);
Stringn=rs.getString
(2);
//n=newString(n.getBytes("ISO8859_1"),"gb2312");this.setName(n);
Stringg=rs.getString(3);
//g=newString(g.getBytes("ISO8859_1"),"gb2312");this.setClassNo(g);
this.setDorNo(rs.getInt(4));
b=true;
}
rs.close();
statement.close();con.close();
returnb;
}
}下面进行数据库连接packagesushe;
importjava.sql.Connection;importjava.sql.DriverManager;publicclassMySQLConnection{staticConnectiongetCon(){
Connectioncon=null;
try{
Class.forName(".mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:
mysql:
//localhost:
3306/mytest","root","");
}
catch(Exceptione){
System.out.println(”建立数据库连接遇到异常!
”);
}
returncon;
}
}
2.3.2运行结果
登陆界面显示:
L
UVrUihifl
EnartEniarl^5:
34
❻中J-av>'
lb■•】
阿™™歹
登陆信息显示:
添加学生信息;
HFiiiagrE
討1561
』访.归H*如4$
/I
JX止■山
0ExfJmr
・.—(71■*一
0iM*
"•■=;二・苫r,,r*A-|.■..I■1n
A
proRipti-prr^nipO
pF^mpriiinpwtirTvr^tBkl■npvtZIs'-inpwi-JT'inpvl4>
brill1irjHc*-
btr■-:
Biittear
:
J—hlwihi-'IkbeSoe°;E«clB^diticn二C
^tud-rniH[Jw.■Applat]E?
i.acJnpM'2CL1-6-17
修改学生信息
■A^abe
Sn^irtI^Mrl
25:
制
删除信息显示:
学生寝室查询:
fMi-fId
算「P止
JOLWL?
Ql啄*1弼:
j好川旳4^碑西必貿打gf1化1■戸譬谢ortdkf
片宅叫=口&
-&而"11皆丽厂
.4人
Jac:
D*■ara-liani口芒口皿』・
2Dli-E-15T=^3J7J£'!
4I8-
qjppmptlLs?
»d■戸O^D科Ls■ficnc^pfS1I-■»mInpiffl»■■«-rt*■ni|]lA2p»S'叭■•n
■kBuriiTwFfafcnl
htn2:
目Ter
第3章总结
经过了一个多星期的努力,终于在规定的时间完成率这份课程设计。
以前,我对Java的很多知识都很陌生,但是通过这次的课程设计使我明白了多东西,翻阅了大量的书籍以及上网查了很多的相关资料,也从中学会了不少东西,它使我知识更加的系统化、全面化。
在实验的过程中也让我体会到了做任事情都是要付出一定的努力的。
一份努力一分收获,每当自己单独的成功解决某些问题时,都会感觉很兴奋,也很有成就感。
在这次课程设计中,我体会到要想开发应该系统软件,不仅需要相当的专业技术知识,还要有谨缜密的思维能力。
只有思想上清晰了,编程才有意义,否则就是白费力气。
同时还要善于捕捉细小的面,因为那往往是这个程序的致命因素。
通过这次程序设计,培养了我的细心和耐心吗,也树立一种正确的求知态度。
通过这次课程设计,我发现了自己的多的不足,尤其是露出了对Java知识基础的掌握不好,多简单的东西都不知道。
在课本上看到的各种算法感觉都很简单,但是真正的让自己去写一个算法感觉很困难,。
即使是课本上的源程序算法,自己写起来都感觉有点生疏。
在调试过程中经常出现的错误也不是很熟悉。
我认识到学好计算机要重视实践操作,不仅仅是类的创建或建包,在其他的课程中都会注重实践。
所以在今后的学习过程中,我会更加注视实践操作,使自己更好的学好计算机。
虽然完成了课程设计,但是这次课程设计的意义对我来说却很重要,让我明白了很多。
我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实际相结合起来,从理论中得出结论,才能真正的掌握,从而提高自己的实际动手能力和独立思考的能力。
今后我要多加实践,把理论和实践完美结合起来,争取去达到另一个高度。
参考文献
[1]Eric.Java编程思想[M].第4版.机械工业出版社,机械工业出版社.
[2]杜波依斯.MySQL技术幕[M].第4版.人民邮电出版社,2011年07月.
[3]林信良.学习笔记[M].第2版.清华大学出版社,2012年05月.
[4]峋.三成.关键技术:
Java应用详解[M].中国铁道出版社,2010年11月.
[5]银鹤.点成金:
Java开发典型实例[M].电子工业出版社,2009年01月.
[6]宗伟.Java语言描述[M].第2版.机械工业出版社,2009年01月.
[7]MetskerSJ.Java设计模式[M].第2版.电子工业出版社,2012年09月.
[8]卫琴.JavaWeb开发技术详解[M].第2版.电子工业出版社,2009年01月.
[9]京华等.JavaWeb整合开发者归来[M].清华大学出版社,2010年01月.
[10]贺松平.SQL的研究及应用[D].:
华中科技大学,2006年4月
[11]毕建信.Java的应用研究与实现[D]理工大学,2006年5月.
[10]冈H:
Eclipse从入门到精通[M]•北京:
清华大学出版社,2005年4月.
[11]清宏计算机工作室.《Java编程技巧》.机械工业出版社,2004年5月.
[12]萨师煊,珊.《数据库系统概论》.高等教育出版社,2002年2月.
[13]温谦.Java从入门到精通[M].人民邮电出版社,2008年08月.
[14]晓义.XML技术及应用[M].工程大学出版社,2011年06月.
[15]俊峰等.JavaWeb应用开发案例教程:
清华大学出版社,2012年01月.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 学生宿舍 管理 系统 论文