Java大作业简单的学籍管理系统.docx
- 文档编号:2658169
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:32
- 大小:62.79KB
Java大作业简单的学籍管理系统.docx
《Java大作业简单的学籍管理系统.docx》由会员分享,可在线阅读,更多相关《Java大作业简单的学籍管理系统.docx(32页珍藏版)》请在冰点文库上搜索。
Java大作业简单的学籍管理系统
上海电力学院
期末作业:
简单的学籍管理系统
课程:
Web应用程序设计
院系:
电气工程学院
专业:
电力系统及其自动化
学生姓名:
张富杰学号:
指导教师:
曹渝昆
2017年1月6日
一、设计思路
随着社会经济的发展,入学的同学越来越多,为方便对同学学籍信息的的管理,设计学籍管理软件来管理本班级同学的学籍信息。
该软件应支持添加、删除、修改、查询功能。
查询方式主要是支持学号查询,例如:
输入“1”,则显示该学生的信息。
运用流式、卡片、整体布局方式对系统的主界面和各功能界面进行设计;通过连接数据库的方式来实现对数据的存储;各功能实现时访问数据库,并对数据信息进行读取,运用Java语句对其进行输出,学号查询时显示在文本框中;系统提示功能用来提醒用户的错误操作和输入时的错误信息,提醒用户进行改正。
二具体实现
1.向班级里插入一个学生,但必须是插在已经建立的班级里。
2.输入学生信息,建立一个班级。
3.修改一个学生的所有资料。
4.删除某班的一个学生及其所有资料。
5.删除一个班级。
6.根据学生姓名查找某个学生信息。
每种功能通过一个类来实现:
类分分为主类、查询类、修改类、添加类、增加类。
主类各功能界面的连接;精确查询类(SearchStudent)实现根据学生姓名查找某个学生信息;修改类(MdifyStudent)实现修改一个学生的所有资料;添加类(AddStudent)实现向班级里插入一个学生,但必须是插在已经建立的班级里。
;删除类(DeleteStudent)实现删除某班的一个学生及其所有资料。
;删除类(DeleteClass)实现删除一个班级;建立类(BuiltClass)实现输入学生信息建立一个班级。
三运行调试与分析
系统的详细设计代码请查阅附带的代码。
以下仅对各个界面进行截图展示:
图1:
管理界面
图2:
添加学生到指定的班级界面
图3:
删除一个学生信息界面
图4:
修改一个学生信息界面
图5:
查询某个学生信息界面
图6删除一个班级界面
图7:
输入一个学生建立一个班级界面
运行JAVA程序中的StudentManager文件,显示系统的主界面,如图1所示,主界面有进入其他子功能的按钮,选择相应的按钮便可进入相应的功能。
添加学生到指定班级功能如图2所示,根据提示输入要添加的信息,点击确定,将弹出提示框,确认是否添加。
输入一个学生建立一个班级功能如图7所示,根据提示输入要添加的信息,点击确定,将弹出提示框,确认是否建立。
删除一个班级信息功能如图6所示,根据提示输入班级号,点击删除。
删除一个学生信息功能如图3所示,根据提示输入学号,点击删除。
修改一个学生信息功能如图4所示,首先输入要修改的人姓名,点击开始修改,在下面的文本框现实当前数据库内所存该人的信息,同时录入修改键变化为可点击,在文本框内输入要修改的学号,点击录入修改,系统将新信息录如数据库。
点击查询某个学生信息按钮,将弹出查询对话框,输入姓名便可以精确查询到此人的所有学籍信息。
查询如图5所示,将显示数据库中所存的所有号码信息。
四设计体会与小结
期末大作业的课设,自己通过查找资料、复习课本、编程调试,写实验报告等环节,进一步掌握了以前学到的知识,并且还对GUI组键的应用有了更深入的认识与掌握,另外还学到了一些新东西,比如JAVA的SWING、AWT包,以前是没有接触过的,可是通过这次课程设计使得我们对这个包更了解。
通过与数据库的连接掌握了Java与数据库的连接技术。
通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习java语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。
五程序代码
packagesimplebighomework;
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.*;
importjava.sql.*;
publicclassStudentManagerextendsJFrameimplementsActionListener{//继承JFrame类
JMenuBarjmb;//菜单栏
JMenuMessage;//菜单
JMenuItemItem1,Item2,Item3,Item4,Item5,Item6;//菜单项
publicStudentManager(Strings){//构造函数StudentManage
//添加按键
jmb=newJMenuBar();
Message=newJMenu("学生信息");
Item1=newJMenuItem("增加学生信息到指定班级");//菜单名
Item2=newJMenuItem("删除一个学生学籍信息");
Item3=newJMenuItem("修改一个学生信息");
Item4=newJMenuItem("查询某个学生信息");
Item5=newJMenuItem("删除一个班级信息");
Item6=newJMenuItem("输入一个学生建立一个班级");
Message.add(Item1);
Message.add(Item2);
Message.add(Item3);
Message.add(Item4);
Message.add(Item5);
Message.add(Item6);
jmb.add(Message);
Item1.addActionListener(this);
Item2.addActionListener(this);
Item3.addActionListener(this);
Item4.addActionListener(this);
Item5.addActionListener(this);
Item6.addActionListener(this);
setTitle(s);//设置窗口标题
setBounds(500,300,500,500);//窗口的位置
setVisible(true);//组件可见
setJMenuBar(jmb);//菜单栏
validate();//再次布置容器及其组件
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置隐藏,关闭,放大窗口
}
publicvoidactionPerformed(ActionEvente){//ActionEvent包含一个事件,该事件为执行动作事件点击按钮等
if(e.getSource()==Item1){//e.getSource()==Item2)返回的当前动作所指向的对象,包含对象的所有信息。
AddStudentad=newAddStudent();
}elseif(e.getSource()==Item2){//通过获取事件源,获取相应的对象
DeleteStudentds=newDeleteStudent();
}elseif(e.getSource()==Item3){
ModifyStudentms=newModifyStudent();
}elseif(e.getSource()==Item4){
SearchStudentss=newSearchStudent();
}elseif(e.getSource()==Item5){
DeleteClassdc=newDeleteClass();
}elseif(e.getSource()==Item6){
BuiltClassbc=newBuiltClass();
}
}
publicstaticvoidmain(String[]args){
StudentManagerstu=newStudentManager("学生管理系统");
}
}
packagesimplebighomework;
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.*;
importjava.sql.*;
publicclassAddStudentextendsJFrameimplementsActionListener{//继承java的窗口体类
JLabelJL=newJLabel("添加学生到指定班级",JLabel.CENTER);
JLabelJLNumber=newJLabel("学号:
");//显示输入学号
JTextFieldJTNumber=newJTextField();//创建文本框
JLabelJLName=newJLabel("姓名:
");
JTextFieldJTName=newJTextField();
JLabelJLClass=newJLabel("班级:
");
ButtonGroupBG=newButtonGroup();
JRadioButtonJRB1=newJRadioButton("一班");
JRadioButtonJRB2=newJRadioButton("二班");
JButtonJBAdd=newJButton("添加");//创建按钮
JButtonJBExit=newJButton("退出");
publicAddStudent(){
this.setTitle("添加学生到指定班级");
this.setLayout(null);
JL.setBounds(100,30,200,40);
this.add(JL);
JLNumber.setBounds(140,80,100,20);//x轴和y轴,宽高
this.add(JLNumber);
JTNumber.setBounds(180,80,80,20);
this.add(JTNumber);
JLName.setBounds(140,120,60,20);
this.add(JLName);
JTName.setBounds(180,120,80,20);
this.add(JTName);
JLClass.setBounds(140,160,100,20);
this.add(JLClass);
JRB1.setBounds(180,160,60,20);
JRB2.setBounds(240,160,60,20);
this.add(JRB1);
this.add(JRB2);
BG.add(JRB1);
BG.add(JRB2);
JBAdd.setBounds(120,220,60,20);
this.add(JBAdd);
JBAdd.addActionListener(this);
JBExit.setBounds(200,220,60,20);
this.add(JBExit);
JBExit.addActionListener(this);
this.setBounds(500,300,500,400);//添加窗口的位置
this.setVisible(true);
}
publicvoidactionPerformed(ActionEvente){//监听接口
if(e.getSource()==JBAdd){//点击建立的时候生效
Stringsnumber=JTNumber.getText();//获取文本框中的信息
Stringsname=JTName.getText();
Stringsclass="一班";
if(JRB1.isSelected())//单选按钮
sclass="一班";
else
sclass="二班";
Connectioncon;//声明Connection对象
Stringdriver="com.mysql.jdbc.Driver";//驱动程序名
//遍历查询结果集
try{
Class.forName(driver);//加载驱动程序
con=DriverManager.getConnection("jdbc:
mysql:
//localhost:
3306/database?
useUnicode=true&characterEncoding=utf-8&useSSL=false","root","zfj");//1.getConnection()方法,连接MySQL数据库!
!
Statementstatement=con.createStatement();//2.创建statement类对象,用来执行SQL语句!
!
Stringsql="select*fromstudentwhereid='"+snumber+"'";//要执行的SQL语句
ResultSetrs=statement.executeQuery(sql);//3.ResultSet类,用来存放获取的结果集!
!
if(rs.next())
JOptionPane.showMessageDialog(null,"该号已经存在");//提示
else{
sql="insertintostudentvalues('"+snumber+"','"+sname+"','"+sclass+"')";
inti=statement.executeUpdate(sql);//执行SQL语句,把返回值赋给i
if(i>0)
JOptionPane.showMessageDialog(null,"建立成功");//提示成功
else
JOptionPane.showMessageDialog(null,"添加失败");//提示失败
}
}
catch(Exceptionee){//捕获异常
}
}
if(e.getSource()==JBExit){//退出按钮监视
setVisible(false);
}
}
publicstaticvoidmain(String[]args){
newBuiltClass();
}
}
packagesimplebighomework;
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.*;
importjava.sql.*;
publicclassBuiltClassextendsJFrameimplementsActionListener{
JLabelJL=newJLabel("输入一个学生建立一个班级",JLabel.CENTER);//什么意思
JLabelJLNumber=newJLabel("学号:
");//显示输入学号
JTextFieldJTNumber=newJTextField();//创建文本框
JLabelJLName=newJLabel("姓名:
");
JTextFieldJTName=newJTextField();
JLabelJLClass=newJLabel("班级:
");
JTextFieldJTClass=newJTextField();
JButtonJBAdd=newJButton("建立");//创建按钮
JButtonJBExit=newJButton("退出");
//什么意思
publicBuiltClass(){
this.setTitle("输入一个学生建立一个班级");
this.setLayout(null);
JL.setBounds(100,30,200,40);
this.add(JL);
JLNumber.setBounds(140,80,100,20);//x轴和y轴,宽高
this.add(JLNumber);
JTNumber.setBounds(180,80,80,20);
this.add(JTNumber);
JLName.setBounds(140,120,60,20);
this.add(JLName);
JTName.setBounds(180,120,80,20);
this.add(JTName);
JLClass.setBounds(140,160,100,20);
this.add(JLClass);
JTClass.setBounds(180,160,80,20);
this.add(JTClass);
JBAdd.setBounds(120,220,60,20);
this.add(JBAdd);
JBAdd.addActionListener(this);
JBExit.setBounds(200,220,60,20);
this.add(JBExit);
JBExit.addActionListener(this);
this.setBounds(500,300,500,400);
this.setVisible(true);
}
publicvoidactionPerformed(ActionEvente){//什么意思?
监听接口
if(e.getSource()==JBAdd){//点击建立的时候生效
Stringsnumber=JTNumber.getText();//获取文本框中的信息
Stringsname=JTName.getText();
Stringsclass=JTClass.getText();
Connectioncon;//声明Connection对象
Stringdriver="com.mysql.jdbc.Driver";//驱动程序名
//遍历查询结果集
try{
Class.forName(driver);//加载驱动程序
con=DriverManager.getConnection("jdbc:
mysql:
//localhost:
3306/database?
useUnicode=true&characterEncoding=utf-8&useSSL=false","root","zfj");//1.getConnection()方法,连接MySQL数据库!
!
Statementstatement=con.createStatement();//2.创建statement类对象,用来执行SQL语句!
!
Stringsql="select*fromstudentwhereid='"+snumber+"'";
ResultSetrs=statement.executeQuery(sql);//3.ResultSet类,用来存放获取的结果集!
!
if(rs.next())
JOptionPane.showMessageDialog(null,"该号已经存在");//提示
else{
sql="insertintostudentvalues('"+snumber+"','"+sname+"','"+sclass+"')";
inti=statement.executeUpdate(sql);//执行SQL语句,把返回值赋给i
if(i>0)
JOptionPane.showMessageDialog(null,"建立成功");//提示成功
else
JOptionPane.showMessageDialog(null,"添加失败");//提示失败
}
}
catch(Exceptionee){//什么意思?
}
}
if(e.getSource()==JBExit){//什么意思?
setVisible(false);
}
}
publicstaticvoidmain(String[]args){
newBuiltClass();
}
}
packagesimplebighomework;
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.*;
importjava.sql.*;
publicclassDeleteClassextendsJFrameimplementsActionListener{
JLabelJL=newJLabel("删除一个班级信息",JLabel.CENTER);
JLabelJLClass=newJLabel("班级:
");//显示班级窗口
JTextFieldJTClass=newJTextField();//输入班级的窗口
JButtonJBDel=newJButton("删除");
JButtonJBE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 作业 简单 学籍 管理 系统