JAVA数据库学生管理系统实训报告Word文件下载.docx
- 文档编号:16555672
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:12
- 大小:73.59KB
JAVA数据库学生管理系统实训报告Word文件下载.docx
《JAVA数据库学生管理系统实训报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《JAVA数据库学生管理系统实训报告Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。
通过实训,我们掌握运用Java语言知识和技能,运用JAVA的基本语法与JDBC数据库技术的应用,完成对甲骨文数据库的数据库管理、例如表的设计(表的创建、修改、删除,字段的默认值、约束及关系等)、数据的查询处理(insert、update、delete、select语句的应用)等技术;
并能结合数据库应用技术和jdbc进行小型数据库管理系统的开发。
模块简介
管理员模块功能需求:
管理员身份登陆系统后,可以对学生信息进行添加、修改和查询等操作,对学生进行添加、修改和查询功能操作,还可以修改管理员的登录密码。
学生模块功能需求:
学生信息管理系统中需要在学生登录或验证身份后,,可以自行完成学生个人信息的查询,也可以进行修改和删除个人信息、修改学生密码等操作。
数据库结构设计
数据表设计
定义每个表的数据类型以及字段限制,使数据库达到一定的完整性.每个表的物理设计如下:
1.表admin保存用户的个人信息
用户信息表主要是用来保存管理员用户的基本信息,包括管理员的ID和管理员的登录密码,只有符合这两个字段的格式要求,才能登录成功,结构表如下:
表4-2管理员信息表
字段名
类型
空值
约束条件
管理员ID
number(10)
notnull
主键
登录密码
varchar2(10)
2.表student保存学生基本信息,结构表如下:
表4-5学生信息表
学号
number(10)
姓名
varchar2(20)
性别
varchar2(3)
年龄
number
(2)
逻辑结构是独立于任何一种数据模型的信息结构。
逻辑结构的任务是把概念结构设计阶段设计好的基本E-R图转化为宜选用的DBMS所支持的数据模型相符合的逻辑结构,并对其进行优化。
流程图层次设计
图的格式如下所示:
图1管理员对学生信息管理系统局部E-R图
数据流图是结构化系统分析的主要工具,它表示了系统内部信息的流向,并表现系统的逻辑处理功能。
系统功能层次图
学生信息管理系统是一个典型的数据库开发应用程序,系统是和数据库相结合.,进入系统,有两个用户,分别是普通学生、和管理员。
3系统模块的详细设计
本学生信息管理系统主要模块,即用户登录模块、用户操作模块。
用户操作模块又分为学生操作模块、管理员操作模块。
下面将显示系统的主要功能模块。
登录模块设计
学生信息管理系统前台登陆模块可以勾选管理员身份信息,代表以管理员身份进入。
不勾选即为普通学生身份登录。
管理员模块设计
学生信息管理系统前台登陆模块只有一个登陆窗口分为学生、管理员两个级别登陆,系统在后台程序有自动限制设置,可以自动识别登陆者的限制。
其系统登陆模块算法如下:
1判断是否勾选管理员身份;
2输入用户名和密码;
3判断用户名和密码是否匹配;
(1)若提示输入信息错误,则重新输入;
(2)否则以管理员身份进入系统。
添加学生信息功能
学生信息管理系统对学生信息的管理非常重要,其中对信息的录入是系统最为关键的地方,以往我们管理学生信息的时候都是手工操作,而随社会不断发展的今天计算机的应用已全部取带了手工操作的方法,利用计算机可以方便的录入各类信息,进行高效的管理.学生信息的录入就是利用计算机通过程序读入数据库,录入学生信息模块算法描述如下:
1.管理员登陆后,录入学生信息管理界面;
2.单击增加学生按钮,键入学生ID;
3.当录入学号已经存在,提示该学生信息已存在,请重新输入;
4.否则学生信息添加成功。
查找学生信息功能
学生信息管理系统对查询学生信息管理也很重要,方法和增添学生信息类似,也同样是利用计算机通过程序读入数据库,查询学生信息模块算法描述如下:
1.管理员登陆后,点击查询学生;
2.当录入学生信息不存在时,提示没有该学生信息,重新输入;
3.当录入学生ID已经存在,提示该学生信息存在,显示学生信息;
删除学生信息功能
学生选课模块主要是给删除学生信息的功能,本功能主要由管理员进入数据库,然后学生管理系统,其删除学生信息模块算法描述如下:
1.管理员成功登陆;
2.点击删除学生;
3.输入学生相关信息,如学生ID;
4.如该学生不存在,则提示信息不存在,否则删除该学生。
修改学生信息功能
此信息修改模块主要是给学生和管理员建立信息库,方便管理员查询操作,信息修改模块算法描述如下:
2.点击修改学生信息;
3.输入学生的编号;
4.编号为空,重新输入;
5.输入不为数字,重新输入;
6.输入正确,进入修改页面进行相关修改。
学生模块设计
查看学生个人信息功能
学生信息管理系统方便了学生查看自己的学籍信息,如果学校由于疏忽输入了错误信息,自己可以查看并且及时通知学校管理员,及时修改,减少不必要的麻烦.
此信息查询模块主要是方便学生查询操作,信息查询模块算法描述如下:
1学生成功登陆;
2.点击查询学生信息;
6.输入正确,进入信息查询页面进行相关修改。
修改学生登录密码功能
学生可以进入学生管理系统进行登录密码的修改
1.学生成功登陆;
2.单击修改密码;
3.输入旧密码、新密码确认后,若旧密码正确则修改成功,则提示重新输入旧密码;
4.提交修改完成修改。
4程序运行与测试
import.*;
etScreenSize();
intwidth=;
intheight=;
rim();
Stringpassword=().trim();
quals(password)){
o();
}else{
(null,"
用户名或密码不正确"
"
提示信息"
;
}}
}else{
quals(password)){
登录成功"
newStudentFrame(s,null).go();
}}}}});
}
publicvoidinit(){
o();
}}
indAdminByName("
admi"
).getPassword());
rim();
StringstudentName=().trim();
Stringage=().trim();
Stringgender=().trim();
Students=newStudent();
o();
}
;
publicclassFindStudentFrameextendsJFrame{
privateStudentDaostudentDao=newStudentDao();
privateJLabelidLbl,nameLbl;
privateJTextFieldidInput,nameInput;
privateJButtonfindBtn,cancelBtn;
publicFindStudentFrame(){
setTitle("
查找学生"
);
setBounds(405,100,200,390);
setResizable(false);
init();
event();
privatevoidinit(){
Containercontainer=getContentPane();
(newGridLayout(3,1));
JPanelp1=newJPanel();
(null);
idLbl=newJLabel("
学籍号:
"
(20,55,50,20);
idInput=newJTextField();
(73,55,100,20);
(idLbl);
(idInput);
(p1);
JPanelp2=newJPanel();
nameLbl=newJLabel("
姓名:
nameInput=newJTextField();
(nameLbl);
(nameInput);
(p2);
JPanelp3=newJPanel();
findBtn=newJButton("
搜索"
(60,30,60,20);
cancelBtn=newJButton("
取消"
(123,30,60,20);
(findBtn);
(cancelBtn);
(p3);
privatevoidevent(){
(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
(newMouseAdapter(){
publicvoidmouseClicked(MouseEvente){
StringidStr=().trim();
StringnameStr=().trim();
LongstudentId=null;
StringstudentName=null;
if()!
=0){o()}});
publicvoidgo(){
setVisible(true);
publicstaticvoidmain(String[]args){
newFindStudentFrame().go();
publicclassShowResultFrameextendsJFrame{
privateList<
Student>
students;
publicShowResultFrame(List<
students){
查询结果"
if()>
0){
setBounds(100,100,300,60*());
}else{
setBounds(100,100,300,150);
}
=students;
privatevoidinit(){
Containercontainer=getContentPane();
(newGridLayout(),2));
}}});
(newColor(253,253,187)));
JButtonb=newJButton("
删除"
finalLongstudentId=();
(newMouseAdapter(){
publicvoidmouseClicked(MouseEvente){
intchoose=(null,"
确定删除"
o();
(studentId);
}}});
(l);
(b);
}}}
privatevoidevent(){
publicvoidgo(){setVisible(true);
publicclassStudentFrameextendsJFrame{
privateJPanelp1,p2,p3,p4,p5,p6;
privateJLabelidLbl,pwdLbl,nameLbl,ageLbl,genderLbl;
privateJTextFieldidInput,nameInput,ageInput,genderInput;
privateJPasswordFieldpwdInput;
privateStudentstudent;
privateJButtonmodifyPwdBtn,submitBtn,exitBtn;
privateStringnPassword;
privateStudentDaodao=newStudentDao();
o();
}});
rim();
StringnewName=().trim();
StringnewAgeStr=().trim();
StringnewGender=().trim();
quals(newPassword)){
newStudentFrame(newStudent,null).go();
o();
}}});
publicStudentgetStudent(){
returnstudent;
o();
}}
5实训总结
本系统是采用Java技术开发的,由于在这个阶段中,基本是处于边学习边实践的状态,基础知识还不是很牢靠,加之自身水平原因,程序还是有许多不足之处。
,比如界面模块做的不够好、实现的功能不够完整、界面需要更精确的美化。
经过这一段时间的努力,收获了很多,在收获的同时也发现了很多的不足,回首论文的写作过程,得到了许多人的帮助,尤其是我的实训老师,在我论文的完成过程中给予了我许多的帮助和鼓励。
在系统开发的两个月里,我受到了指导老师的细心指导,甄磊老师老师严谨的指导态度与深厚的理论知识都让我受益非浅,让我学到了很多的东西,无论是理论还是实践都使我的知识有很大的提高。
通过本次实训,我掌握了Java编程技能,对Oracle数据库有了较深的理解。
比较全面的巩固了编程思想.也通过本次实训,使我懂得在在编程工作中,程序员的工作态度以及良好的习惯的重要性
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 数据库 学生 管理 系统 报告