基于Java的学生管理系统设计实验报告(7700字)

发表于:2017.7.19来自:www.ttfanwen.com字数:7700 手机看范文

河北工业大学

《Java程序设计》课程设计报告

-----学生信息管理系统的设计与实现

班 级:软件Z102班

姓 名:曹立红

学 号:104431

指导教师:姜子敬

目 录

1 前言 .................................................................................................... 1

2 系统功能 ............................................................................................ 1

2.1 运行环境 .................................................................................... 1

2.2 操作说明 .................................................................................... 1

3 系统流程图 ........................................................................................ 2

4 程序调试及参数设置 ........................................................................ 3

4.1 系统首页 ...................................................................................... 3

4.2 登录界面 ...................................................................................... 3

4.3 用户界面 ...................................................................................... 5

4.4 管理员界面 .................................................................................. 5

4.5 信息界面 ...................................................................................... 6

4.6 添加信息界面 .............................................................................. 6

5 程序 .................................................................................................... 7

6 结论 .................................................................................................... 9

7 参考文献 ............................................................................................ 9 1

1 前言

随着计算机的发展及网络技术的应用,当今社会正快速向信息化前进,信息自动化的作用也越来越大。学生信息管理对于学校的管理者来说至关重要,并且是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。随着高校对招生规模的不断扩大,学生数量的急剧增加,面对庞大数据量,单纯的依赖人工的管理方式已不能适应各学校的管理需求,而作为计算机应用的一部分,使用计算机对学生信息进行管理有着手工管理无法比拟的优点,传统的手工管理既不易于规范化,管理效率也不高同时浪费大量的人力和物力,而学生管理系统在很大程度上能够弥补手工管理的不足,例如:学生管理系统能够达到检索迅速、查找简便、可靠性强、存储量大、保密性好等这些优点能够极大地提高工作效率,也是学校科学性、正规化管理的重要条件。 2 系统功能

2.1 运行环境

硬件环境:java是跨平台的,对操作系统没有要求,它由两个部分组成:一个是Java Virtual Machine即Java虚拟机,另一部分是Java Application Programming Interface (Java API) 即Java应用程序设计接口,这两部份软件就构成了Java运行的基本的环境。

软件环境:该系统是一个小型的学生信息管理系统,其应用的开发环境为JCreatorLE,使用Java开发语言,并使用SQL Server2005作为后台数据库,并采用JDBC连接数据库的方法连接数据库。

2.2 操作说明

该学生管理系统分为管理员模块和用户模块:

(1) 登录时如使用“用户”身份即学生登录时如输入的用户名及密码在后台数据库中存在即可成功登录,否则提示错误拒绝登录;如成功登录后即可进入用户界面,该用户可以查看个人信息和各门成绩信息。

(2) 如以“管理员”身份登录则可进入管理员界面:管理员可以查看所有学生信息、课程信息、学生成绩,查询、修改、删除某些学生信息、课程信息、学生成绩信息,同时还可以对相关信息进行排序。

1

3 系统流程图

1. 登录界面:

点击“开始”菜单选择“登录”的下拉框即可进入登录界面:如果输入的用户名及密码在数据

库中存在则可成功登录否则拒绝登录。

2. 点击“退出”即可退出应用程序,关闭窗口。

3. 管理员界面:

管理员可以对学生信息、课程信息及学生成绩信息进行查看、查询,并且选中一学生信息后可

进行修改、删除,此外还可以对学生信息、课程信息、成绩信息进行添加。

4. 用户界面:

一般用户(学生)身份成功登录后,即可进入用户界面,查看个人信息及各门成绩信息。

基于Java的学生管理系统设计实验报告

4 程序调试及参数设置

4.1 系统首页

基于Java的学生管理系统设计实验报告

4.2 登录界面

点击“开始”菜单选择“登录”的下拉菜单即可进入“登录界面”:

基于Java的学生管理系统设计实验报告

在登录按钮中写入以下代码:

if("登录".equals(actionCommand))//如果是“登录”按钮触发的事件 {

strName=t1.getText();

strPwd=t2.getText();//获取两文本框的内容 3

if(strName.equals("曹立红")&&strPwd.equals("104431"))//管理员身份登录

{

level=0;//标记用户登录权限level=0为管理员权限level=1为一般用户权限 layout.show(c,"card4");//第四张卡片出现进入"管理员界面"

}

else//否则进入"一般用户界面"

{

level=1;

String sql="select * from 学生表 where name='"+strName+"' and pwd='"+strPwd+"'";//在"学生表"中查找该学生

ResultSet rs=queryMind(sql);//执行SQL语句

try{

if(rs.next())//如果rs.next()=true则该学生存在

{

str+=strName+"同学的个人信息:"+"\n\n";

str+="学号为:"+rs.getString("id")+"\n"+"姓名为:"+rs.getString("name")+"\n";

str+="性别为:"+rs.getString("sex")+"\n"+"所在班级为:"+rs.getString("class")+"\n";//分别获取该学生在"学生表"中的相关信息

strId=rs.getString("id");//该学生学号

String sql1="select * from 成绩表 where id='"+strId+"'";//在成绩表中以该学生的学号为条件查找该学生的成绩

ResultSet rs1=queryMind(sql1);//调用queryMind(0方法执行SQL语句返回结果集赋给rs1

if(rs1.next())//如果结果集不为空则该同学成绩存在

{

str+="\n\n本学期成绩为:\n\n";

rs1=queryMind(sql1);//rs1.next()方法会使指针移动到此 ResultSet 对象的下一行故需重新获取数据集

while(rs1.next())

{

String id=rs1.getString("cId");//获取成绩表中的"课程号"

String sql2="select * from 课程表 where cId='"+id+"'";//以获取到的“课程号”在“课程表”中查找该课程信息

ResultSet rs2=queryMind(sql2);

if(rs2.next())

{

String cName=rs2.getString("cName");//获取该课程的课程名

cName=cName.trim();

str+=cName+"的成绩为:"+rs1.getInt("Score")+"\n"; }

}

}

ta1.setText(str);

layout.show(c,"card3");

}

4

else

{

JOptionPane.showMessageDialog((Component)null,"您输入的用户不存在!","提示框",JOptionPane.INFORMATION_MESSAGE);

}

}

catch(SQLException e1)

{

System.out.println(e1);

}

}

4.3 用户界面

如以一般用户身份登录,即输入的用户名在后台数据库的学生表中存在 (如输入用户名:赵月月,密码:104430),则可成功登录到用户界面,查看用户的个人信息及各门成绩信息:

基于Java的学生管理系统设计实验报告

4.4 管理员界面

如以管理员身份登录 (即用户名:曹立红,密码:104431) 则可进入管理员界面:

5

4.5 信息界面

管理员可以查看学生信息、课程信息、成绩信息,点击“查看信息”菜单中的下拉菜单项即可进入对应的信息界面:

基于Java的学生管理系统设计实验报告

在此界面中可以对相关信息进行查询、修改并可删除信息,此外还可以对整个信息进行排序。

4.6 添加信息界面

管理员还可对学生信息、课程信息、学生成绩信息进行添加,点击“添加信息”菜单的下拉菜单项即可进入相应的添加信息界面:

基于Java的学生管理系统设计实验报告

6

5 程序

1. 修改学生信息的程序:

public void actionPerformed(ActionEvent e)

{

String actionCommand=e.getActionCommand();//获取与产生动作相关的命令字符串

Container c=getContentPane();//获取当前窗格

if(e.getSource() instanceof JButton)//判断是否为按钮触发了事件

{

if("修改学生信息".equals(actionCommand))

{

int iNum=jtable1.getSelectedRow();//获取table中当前的选中项的索引

if(iNum==-1)//如果索引值为-1即表示未选中table中的任何项

{

JOptionPane.showMessageDialog((Component)null,"请先选择需要修改的学生信息!","提示框",JOptionPane.INFORMATION_MESSAGE);

}

else{

bxg4.setVisible(true);

btn4.setVisible(false);

String id=(String)jtable1.getValueAt(iNum,0);//获取table中当前选中项的第一列值即“学号”

id=id.trim();

String name=(String)jtable1.getValueAt(iNum,1);//获取“姓名”列的值

name=name.trim();

String sex=(String)jtable1.getValueAt(iNum,2);//获取“性别”列的值

sex=sex.trim();

if(sex.equals("女"))//如果“性别”为女

基于Java的学生管理系统设计实验报告

基于Java的学生管理系统设计实验报告

{

7

} rbn2.setSelected(true);//则设置rbn2按钮选中 } if(sex.equals("男")) { rbn1.setSelected(true); } String bj=(String)jtable1.getValueAt(iNum,3);//获取“班级”列的值 bj=bj.trim(); tId.setText(id); tId.setEnabled(false); tName.setText(name); cb.setSelectedItem(bj);//将获取到的值分别加到card5中的相关控件中显示 layout.show(c,"card5"); }

2. 删除学生信息:

if("删除学生信息".equals(actionCommand))

{

int iNum=jtable1.getSelectedRow();//获取table的当前选中项的索引

if(iNum==-1) //如果索引值为-1即表示未选中table中的任何项

{

JOptionPane.showMessageDialog((Component)null,"请先选择要删除的学生!","提示框",JOptionPane.INFORMATION_MESSAGE);

}

else{

String id=(String)jtable1.getValueAt(iNum,0); //获取table中当前选中项的第一列值即“学号”

id=id.trim();

String sql="delete from 学生表 where id='"+id+"'";//从用户表中删除该用户信息 String sql2="delete from 成绩表 where id='"+id+"'";//如果课程表中存在该用户的成绩则一并删除

try{

con=DriverManager.getConnection(dbURL, userName, userPwd); //连接数据库

st=con.createStatement();//建立Statement对象

st.executeUpdate(sql2); //执行SQL语句

con.close();

con=DriverManager.getConnection(dbURL, userName, userPwd); st=con.createStatement();//建立Statement对象

st.executeUpdate(sql);

JOptionPane.showMessageDialog((Component)null,"删除成功!","提示框",JOptionPane.INFORMATION_MESSAGE);

String sql1="select * from 学生表";

queryTable1(sql1);//重新显示学生表中的信息

}

8

catch(SQLException e4){

System.out.println(e4);

}

}

}

6 结论

经过一周的设计,该小型的学生管理系统已具备基本功能,包括:对学生信息、课程信息及学生成绩信息的查询以及相关信息的修改、删除功能,此外还可以对学生信息、课程信息、学生成绩信息进行添加等功能。但该系统还存在许多的不足之处,例如:该系统不能实现多条件查询以及多表间的联合查询,此外系统的部分界面还不甚友好、完善,布局也不太整齐灵活,仍需进一步完善。 7 参考文献

1 赵国玲,王宏,柴大鹏. Java语言程序设计(第二版).机械工业出版社

2 张永常. Java程序设计实用教程(第2版).电子工业出版社

9



更多类似范文
┣ JAVA学生成绩管理系统实验报告 23400字
┣ Java实训报告 4200字
┣ 《JAVA程序设计》实训报告 200字
┣ Java学生管理系统 19200字
┣ 更多java学生管理系统实训报告
┗ 搜索类似范文

更多相关推荐:
安徽工业大学——java实验报告11300字

Java课程设计报告学号姓名班级指导教师129074068叶玉虎计122班柯栋梁安徽工业大学计算机学院20xx年12月实验一利用JAVA反射技术分析类结构自己定义的类packagechap05publiccla...

《JAVA程序设计》实验报告5400字

福建师范大学协和学院本科实验报告课程名称JAVA程序设计系别专业班级学号学生姓名20xx年月日实验项目列表JAVA程序设计实验相关说明实验要求1明确实验课是课程的重要组成部分与理论课有着同等地位是培养自身的实验...

Java实训报告封皮500字

JAVA程序设计实训报告课题名称JAVA程序设计专业计算机网络技术班级学号姓名指导教师二00九年3月15日JAVA程序设计实训考核的评定目录一设计题目1二课程设计目的错误未定义书签三课程设计步骤1四课程设计代码...

专栏推荐
大家在关注

地图地图CC