JAVASQL学生学籍管理系统代码及实验报告解读.docx

上传人:b****7 文档编号:15999575 上传时间:2023-07-09 格式:DOCX 页数:41 大小:192.67KB
下载 相关 举报
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第1页
第1页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第2页
第2页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第3页
第3页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第4页
第4页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第5页
第5页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第6页
第6页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第7页
第7页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第8页
第8页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第9页
第9页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第10页
第10页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第11页
第11页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第12页
第12页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第13页
第13页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第14页
第14页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第15页
第15页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第16页
第16页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第17页
第17页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第18页
第18页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第19页
第19页 / 共41页
JAVASQL学生学籍管理系统代码及实验报告解读.docx_第20页
第20页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

JAVASQL学生学籍管理系统代码及实验报告解读.docx

《JAVASQL学生学籍管理系统代码及实验报告解读.docx》由会员分享,可在线阅读,更多相关《JAVASQL学生学籍管理系统代码及实验报告解读.docx(41页珍藏版)》请在冰点文库上搜索。

JAVASQL学生学籍管理系统代码及实验报告解读.docx

JAVASQL学生学籍管理系统代码及实验报告解读

学生学籍管理系统

1课程设计目的、设计内容与需求分析

1.1课程设计目的

通过本次课程设计的实践操作,能够让学生懂得Java、SQL的各种相关知识的使用,真正的提高学生独立开发设计Java程序,把课堂上的知识运用在实践上,一门编程语言只有在不断实践操作和练习上才会有进步。

1.2软件设计内容

学生学籍管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。

该软件用java语言编写,用SQLServer2005数据库作为后台的数据库进行信息的存储,用SQL语句完成添加,查询,修改,删除的操作。

用ODBC驱动实现前台Java与后台SQL数据库的连接。

Java语言跨平台性强,可以在windows,linux,ubuntu等系统下使用,方便简单,安全性好。

SQLServer2005数据库高效安全,两者结合可相互利用各自的优势。

系统可供输入的属性有“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。

该系统实现的大致功能:

1.管理员登陆界面。

该界面可以输入管理员号,登陆密码。

用户通过验证通过后方可进入管理系统。

一定程度上保证了信息安全性,防止他人未经允许篡改学生信息。

2.查询学生信息。

可以选择由用户选择“显示系统中当前的所有学生信息”。

也可以选择按照“某一个学号查询该学号的学生信息”。

查询到的信息会在窗口中依次显示出来。

3.添加学生信息。

可以按照图形的界面的显示依次输入新学生的“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。

完成新纪录的添加。

4.修改学生信息。

可以选择按照“学号”或者“姓名”找到该学生的学生信息并输入要修改的属性,并输入新的数据。

完成对学生记录的修改。

5.删除学生记录。

可以根据输入的“学号”或者”姓名”进行删除的操作。

1.3需求分析

在一些学校等机构,随着学生数量的不断增加,学生的信息不断增多,人工管理信息的难度也越来越大。

而且效率也是很低的。

所以如何自动高效地管理信息是这些年来许多人所研究的。

随着这些年电脑计算机的速度质的提高,成本的下降,IT互联网大众趋势的发展。

我们使用电脑的高效率才处理数据信息成为可能。

学生学籍管理系统的出现,正是管理人员与信息数据,计算机的进入互动时代的体现。

友好的人机交互模式,清晰简明的图形界面,高效安全的操作使得我们对成千上万的信息的管理得心应手。

学生学籍管理系统,以SQL数据库作为后台信息存储,Java作为前台系统的语言。

提供了对学生信息添加,查询,修改,删除的功能。

实现了最基本的信息管理。

2设计思路与主功能设计

2.1设计思路

2.1.1开发环境和软件

(1)操作系统:

Windows7

(2)数据库软件:

SQLServer2005

(3)Java开发工具:

Eclipse

2.1.2SQL数据库表结构

2.1.3程序系统设计图

删除

查询

登录

退出

失败

成功

登录验证

学生学籍管理系统

添加

修改

显示

2.1.4功能模块说明:

1).管理员登陆界面。

该界面可以输入管理员号,登陆密码。

用户通过验证通过后方可进入管理系统。

一定程度上保证了信息安全性,防止他人未经允许篡改学生信息。

2).查询学生信息。

可以选择由用户选择“显示系统中当前的所有学生信息”。

也可以选择按照“某一个学号查询该学号的学生信息”。

查询到的信息会在窗口中依次显示出来。

3).添加学生信息。

可以按照图形的界面的显示依次输入新学生的“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。

完成新纪录的添加。

4).修改学生信息。

可以选择按照“学号”或者“姓名”找到该学生的学生信息并输入要修改的属性,并输入新的数据。

完成对学生记录的修改。

5).删除学生记录。

可以根据输入的“学号”或者”姓名”进行删除的操作。

6).显示学生信息。

可以显示所有学生的信息、以供查看。

2.2功能设计与介绍

1)、添加学生信息

2)、修改学生信息

3)、查询学生信息

4)、删除学生信息

5)、显示学生信息

6)、退出管理系统

3具体功能的介绍和数据测试

流程图:

删除

查询

登录

退出

失败

成功

登录验证

学生学籍管理系统

添加

修改

显示

函数之间相互调用的图示:

Search()

Login

成功

登录验证

Add()

失败

Modify()

Delete()

Display()

3.1登录界面

登录界面输入“姓名”和“密码”,点击“确定”,通过验证则进入主功能菜单。

如果输入错误则会有相应的警告!

1.当输入了一个错误时,会出现下图!

2.登陆成功后提示

3.2主功能界面

3.2.1显示

点击

,则弹出下面的选择菜单。

3.2.2添加

点击

,则弹出下面的选择菜单。

添加学生信息

1、设置的学号为主键、所以若添加的学号已存在的、会弹出如下图的提示:

2.成功添加学生信息

3.2.3修改学生信息

点击

,则弹出下面的选择菜单。

1.若输入的学号不存在的时候会有如下提示框:

2.如果输入的学号在数据库中可以查询的到、则会有弹出下面的菜单:

然后修改学生对应框的学生信息、修改完成后、点击

、弹出下面的提示

3.2.4查询学生信息

点击

,则弹出下面的选择菜单。

1.若输入的学号不存在、会弹出如下提示:

2、输入的学号存在的时候、会显示学生的所有信息:

学生信息

点击

,则弹出下面的选择菜单。

1.输入的学号不存在时、会弹出提示

2.输入学号存在时、完成删除后弹出提示

3.2.6退出

点击

,退出本学籍管理系统。

4课程设计总结

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.本次课程设计虽然很辛苦,实在是受益匪浅。

本来这门课的知识学的就不够扎实,本次课程设计,在设计过程中碰到了很多问题,刚开始要设计的时候,还真不知道从哪里下手但最终在图书、同学和老师的帮助下都得到了解决,让我学会了好多书本上没有的东西,通过本次课程设计我也能将课本上的知识融会贯通,起到了很好的辅助学习的效果,但是我发现我学到的知识比整整一个学期学到的都多。

理论和实践的相结合是学习最有效的方法。

在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

5、参考文献:

1.《数据库系统原理与应用》孟彩霞主编人民教育出版社

2.《JAVA程序设计》JamesCohoon/JackDavidson著清华大学出版社

3.《JAVA项目开发案例整合》白伟明李伟等著电子工业出版社

6、代码:

(1)登陆:

Login

publicclassLogin{

publicstaticvoidmain(String[]args){

finalStringuserName="1";

finalStringpasswrod="1";

finalJFramejFrame=newJFrame("登陆界面");

Dimensiondimension=Toolkit.getDefaultToolkit().getScreenSize();

jFrame.setBounds(((int)dimension.getWidth()-200)/2,((int)dimension.getHeight()-300)/2,200,150);

jFrame.setResizable(false);

jFrame.setLayout(null);

jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JLabellabel1=newJLabel("姓名");

label1.setBounds(10,10,100,30);

jFrame.add(label1);

JLabellabel2=newJLabel("密码");

label2.setBounds(10,40,100,30);

jFrame.add(label2);

finalJTextFieldtext1=newJTextField();

text1.setBounds(50,15,130,20);

jFrame.add(text1);

finalJPasswordFieldtext2=newJPasswordField();

text2.setBounds(50,45,130,20);

jFrame.add(text2);

JButtonbutton=newJButton("Login");

button.setBounds(10,75,170,40);

button.addActionListener(newActionListener(){

@Override

publicvoidactionPerformed(ActionEvente){

if(userName.equals(text1.getText())&&passwrod.equals(text2.getText())){

jFrame.dispose();//使远窗口消失

JOptionPane.showMessageDialog(null,"登陆成功","提示",JOptionPane.INFORMATION_MESSAGE);

jFrame.dispose();

(newMenu()).go();

}else{

JOptionPane.showMessageDialog(null,"错误","提示",JOptionPane.ERROR_MESSAGE);

text1.setText("");

text2.setText("");

}

}

});

jFrame.add(button);

jFrame.setVisible(true);

jFrame.setLocationRelativeTo(null);

}

}

(2):

主界面:

Menu

importjava.awt.*;

import

import

publicclassMenu{

JFramejf;

JButtonj1,j2,j3,j4,j5,j6;

publicstaticvoidmain(Stringargs[]){

Menum=newMenu();

m.go();

}

publicvoidgo(){

jf=newJFrame("学生学籍管理系统");

jf.setBounds(200,200,300,200);

Containercp=jf.getContentPane();

cp.setLayout(newFlowLayout(FlowLayout.LEADING,20,20));

j1=newJButton("添加学生信息");

j2=newJButton("修改学生信息");

j3=newJButton("查询学生信息");

j4=newJButton("删除学生信息");

j5=newJButton("显示学生信息");

j6=newJButton("退出管理系统");

cp.add(j1);

cp.add(j2);

cp.add(j3);

cp.add(j4);

cp.add(j5);

cp.add(j6);

j1.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente){

//jf.dispose();

newAdd();

}

});

j2.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente){

//jf.dispose();

Modifymodify=newModify();

}

});

j3.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente){

//jf.dispose();

Searchsearch=newSearch();

}

});

j4.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente){

//jf.dispose();

Deletedelete=newDelete();

}

});

j5.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente){

//jf.dispose();

Displaydisplay=newDisplay();

}

});

j6.addActionListener(newActionListener(){

//ActionListener接收动作事件的监听器接口。

//在处理动作事件感兴趣的类实现这个接口,这个类创建的对象注册一个组件,使用组件的addActionListener方法。

//动作事件发生时,该对象的actionPerformed方法被调用。

publicvoidactionPerformed(ActionEventae){

System.exit(0);

}

});

jf.setVisible(true);

//jf.setLocationRelativeTo(null);

//jf.setLocationRelativeTo(null)是用来使窗口显示在屏幕正中间

}

}

(3)、添加:

Add

importjava.awt.*;

importjavax.swing.*;

importjava.sql.*;

publicclassAddextendsJFrameimplementsActionListener{

staticAdds;

/*添加学生信息控件*/

JPaneljpl=newJPanel();

JLabellabel1=newJLabel("添加学生信息",JLabel.CENTER);

JLabellabel2=newJLabel("学号:

",JLabel.CENTER);

JLabellabel3=newJLabel("姓名:

",JLabel.CENTER);

JLabellabel4=newJLabel("性别:

",JLabel.CENTER);

JLabellabel5=newJLabel("班级:

",JLabel.CENTER);

JLabellabel6=newJLabel("生日:

",JLabel.CENTER);

JLabellabel7=newJLabel("政治面貌:

",JLabel.CENTER);

JLabellabel8=newJLabel("入学年份:

",JLabel.CENTER);

JLabellabel9=newJLabel("入学成绩:

",JLabel.CENTER);

JLabellabelA=newJLabel("联系方式:

",JLabel.CENTER);

JLabellabelB=newJLabel("家庭住址:

",JLabel.CENTER);

//JLabellabelC=newJLabel("备注信息:

",JLabel.CENTER);

JTextFieldSno=newJTextField

(2);

JTextFieldSname=newJTextField(4);

JTextFieldSsex=newJTextField();

JTextFieldSclas=newJTextField();

JTextFieldSbirth=newJTextField();

JTextFieldSnation=newJTextField();

JTextFieldSyear=newJTextField();

JTextFieldSgrade=newJTextField();

JTextFieldStel=newJTextField();

JTextFieldSaddress=newJTextField();

JButtonreset=newJButton("重置");

JButtonaddmsg=newJButton("添加");

publicAdd()

{

super("添加学生信息");

this.setResizable(false);

this.setSize(500,600);

this.setVisible(true);

//this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.add(jpl);

this.setLocationRelativeTo(null);

jpl.setLayout(null);

addmsg.addActionListener(this);

reset.addActionListener(this);

/*插入面板*/

label1.setBounds(100,20,300,20);

jpl.add(label1);

label2.setBounds(100,50,70,20);

jpl.add(label2);

Sno.setBounds(190,50,140,20);

jpl.add(Sno);

label3.setBounds(100,90,70,20);

jpl.add(label3);

Sname.setBounds(190,90,140,20);

jpl.add(Sname);

label4.setBounds(100,130,70,20);

jpl.add(label4);

Ssex.setBounds(190,130,140,20);

jpl.add(Ssex);

label5.setBounds(100,170,70,20);

jpl.add(label5);

Sclas.setBounds(190,170,140,20);

jpl.add(Sclas);

label6.setBounds(100,210,70,20);

jpl.add(label6);

Sbirth.setBounds(190,210,140,20);

jpl.add(Sbirth);

label7.setBounds(100,250,70,20);

jpl.add(label7);

Snation.setBounds(190,250,140,20);

jpl.add(Snation);

label8.setBounds(100,290,70,20);

jpl.add(label8);

Syear.setBounds(190,290,140,20);

jpl.add(Syear);

label9.setBounds(100,330,70,20);

jpl.add(label9);

Sgrade.setBounds(190,330,140,20);

jpl.add(Sgrade);

labelA.setBounds(100,370,70,20);

jpl.add(labelA);

Stel.setBounds(190,370,140,20);

jpl.add(Stel);

labelB.setBounds(100,410,70,20);

jpl.add(labelB);

Saddress.setBounds(190,410,140,20);

jpl.add(Saddress);

reset.setBounds(120,450,90,20);

addmsg.setBounds(240,450,90,20);

jpl.add(reset);

jpl.add(addmsg);

}

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==addmsg)

{

try

{

}

catch(ClassNotFoundExceptionce)

{

JOptionPane.showMessageDialog(s,ce.getMessage());

}

try

{

Statementstmt=conn.createStatement();

inta=stmt.executeUpdate("insertintoshujuku(Sno,Sname,Ssex,Sclas,Sbirth,Snation,Syear,Sgrade,Stel,Saddress)values('"+Sno.getText()+"','"+Sname.getText()+"','"+Ssex.getText()+"','"+Sclas.getText()+"',"+

"'"+Sbirth.getText()+"','"+Sna

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2