JAVA--基于JAVA的学生成绩管理系统源代码
Java程序设计
系
专 业
班 级
学 号 15号
姓 名 刘振基
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
目 学生成绩管理系统
任课教师 彭杰
一:要求
1、 用到书上(课本或实验册)上的至少三个实例 2、 用到至少两种布局和至少四种组件 3、 用到对话框
4、 用到对数据库的查询、删除、添加和修改 5、 最好用到输入输出流
6、 具有一定的实际意义
二:内容
本系统用access作为数据库,用到了书上的布局实例和数
据库连接实例
学,大功能: 1、输入十个同学的学号,姓名,出生日期,二科成绩(学英语) 。
2、输入学号查询学生信息。
3、删除记录
4、查询记录
5、添加记录
6、修改记录
三:代码
第一部分:
public class main {
public static void main(String[] args) {
zhuchuangkou win=new zhuchuangkou();
}
}
第二部分主界面:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
public class zhuchuangkou extends Frame implements ActionListener{
Button button1,button2,button3,button4,tuichu;
Panel p1,p2,p3;
Label l1,l2,l3;
TextField a1,a2;
Box b1,b2,b3,b4,b5;
ss s;
zhuchuangkou(){
button1=new Button("登陆");
button2=new Button("删除");
button3=new Button("修改");
button4=new Button("添加");
tuichu=new Button("退出");
p1=new Panel();
p2=new Panel();
p3=new Panel();
l1=new Label("学生成绩管理",Label.CENTER);
l1.setFont(new Font("宋体",Font.BOLD,72));
l1.setBackground(Color.green);
l2=new Label("登录名");
l3=new Label("密码");
a1=new TextField(10);
a2=new TextField(10);
a2.setEchoChar('*');
b1=Box.createVerticalBox();
b1.add(l2);
b1.add(Box.createVerticalStrut(8));
b1.add(l3);
b2=Box.createVerticalBox();
b2.add(a1);
b2.add(Box.createVerticalStrut(8));
b2.add(a2);
b4=Box.createHorizontalBox();
b4.add(button1);
b4.add(Box.createHorizontalStrut(10));
b4.add(tuichu);
b3=Box.createHorizontalBox();
b3.add(b1);
b3.add(Box.createHorizontalStrut(10));
b3.add(b2);
b5=Box.createVerticalBox();
b5.add(b3);
b5.add(Box.createVerticalStrut(8));
b5.add(b4);
button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
button4.addActionListener(this);
tuichu.addActionListener(this);
p1.add(l1);
p2.add(b5);
add(p1,BorderLayout.NORTH);
add(p2,BorderLayout.CENTER);
add(p3,BorderLayout.PAGE_END);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
}
});
setBackground(Color.RED);
setBounds(10, 10, 1000, 500);
setVisible(true);
validate();
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==tuichu){
System.exit(0);
}
if(e.getSource()==button1){
if(a1.getText().equals("liuzhenji")&&a2.getText().equals("123456")){
new chuankou();
System.out.println("wwwww");
dispose();
}
else{
System.out.print("nishurucuowu");
}
}
}
}
第三部分选择操作:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
public class zhuchuangkou extends Frame implements ActionListener{
Button button1,button2,button3,button4,tuichu;
Panel p1,p2,p3;
Label l1,l2,l3;
TextField a1,a2;
Box b1,b2,b3,b4,b5;
ss s;
zhuchuangkou(){
button1=new Button("登陆");
button2=new Button("删除");
button3=new Button("修改");
button4=new Button("添加");
tuichu=new Button("退出");
p1=new Panel();
p2=new Panel();
p3=new Panel();
l1=new Label("学生成绩管理",Label.CENTER);
l1.setFont(new Font("宋体",Font.BOLD,72));
l1.setBackground(Color.green);
l2=new Label("登录名");
l3=new Label("密码");
a1=new TextField(10);
a2=new TextField(10);
a2.setEchoChar('*');
b1=Box.createVerticalBox();
b1.add(l2);
b1.add(Box.createVerticalStrut(8));
b1.add(l3);
b2=Box.createVerticalBox();
b2.add(a1);
b2.add(Box.createVerticalStrut(8));
b2.add(a2);
b4=Box.createHorizontalBox();
b4.add(button1);
b4.add(Box.createHorizontalStrut(10));
b4.add(tuichu);
b3=Box.createHorizontalBox();
b3.add(b1);
b3.add(Box.createHorizontalStrut(10));
b3.add(b2);
b5=Box.createVerticalBox();
b5.add(b3);
b5.add(Box.createVerticalStrut(8));
b5.add(b4);
button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
button4.addActionListener(this);
tuichu.addActionListener(this);
p1.add(l1);
p2.add(b5);
add(p1,BorderLayout.NORTH);
add(p2,BorderLayout.CENTER);
add(p3,BorderLayout.PAGE_END);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
}
});
setBackground(Color.RED);
setBounds(10, 10, 1000, 500);
setVisible(true);
validate();
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==tuichu){
System.exit(0);
}
if(e.getSource()==button1){
if(a1.getText().equals("liuzhenji")&&a2.getText().equals("123456")){
new chuankou();
System.out.println("wwwww");
dispose();
}
else{
System.out.print("nishurucuowu");
}
}
}
}
第四部分查询界面实现:
import java.awt.*;
import java.awt.event.*; import java.sql.*;
import javax.swing.JOptionPane; public class ss extends Frame implements TextListener,ActionListener{
Button xunzhao;
TextField input;
TextArea show;
String s;
int k;
Connection con;
Statement sql;
int sum=0;
ResultSet rs;
ss(){
Panel p=new Panel();
xunzhao= new Button("查找");
input= new TextField(10);
show= new TextArea(6,43);
p.add(new Label("输入学号"));
p.add(input);
p.add(xunzhao);
xunzhao.addActionListener(this);
show.addTextListener(this);
show.setEditable(false);
add(p,BorderLayout.NORTH);
add(show,BorderLayout.CENTER);
setBounds(10,30,500,200);
setVisible(true);
validate();
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
}
});
}
public void actionPerformed(ActionEvent ee) {
boolean boo=true;
s=input.getText();
k=Integer.parseInt(s);
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }
catch(ClassNotFoundException eee)
{ System.out.println(""+eee);}
try { con=DriverManager.getConnection("jdbc:odbc:sun","gxy","123");
sql=con.createStatement();
rs=sql.executeQuery("SELECT * FROM chengjibiao ");
while(rs.next())
{
int number=rs.getInt("number");
String name=rs.getString("name");
String date=rs.getString("birthday");
int math=rs.getInt("math");
int english=rs.getInt("english");
if(number==k)
{ boo=false;
show.setText(null);
show.append("学号:"+number+" 姓名:"+name+" 出生:"+date+"
数学 "+math+" 英语 "+english);
show.append("\n");
}
}
con.close();
if(boo){
JOptionPane.showMessageDialog(this, "你输入的学号不存在");
}
}
catch(SQLException eee)
{ System.out.println(eee);
}
}
}
第五部分删除:
import java.awt.*;
import java.awt.event.*; import java.sql.*;
import javax.swing.JOptionPane; public class shanchu extends Frame implements TextListener,ActionListener{
Button xunzhao;
TextField input;
TextArea show;
String s;
int k,s1,j;
Connection con;
Statement sql;
int sum=0;
ResultSet rs;
shanchu(){
Panel p=new Panel();
xunzhao= new Button("删除");
input= new TextField(10);
show= new TextArea(6,43);
p.add(new Label("输入要删除的" +"学号"));
p.add(input);
p.add(xunzhao);
xunzhao.addActionListener(this);
show.addTextListener(this);
show.setEditable(false);
add(p,BorderLayout.NORTH);
add(show,BorderLayout.CENTER);
setBounds(10,30,500,200);
setVisible(true);
validate();
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
}
});
}
public void actionPerformed(ActionEvent ee) {
boolean boo=true;
s=input.getText();
k=Integer.parseInt(s);
String m,dir;
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException eee)
{ System.out.println(""+eee);
}
try { con=DriverManager.getConnection("jdbc:odbc:sun","gxy","123");
sql=con.createStatement();
rs=sql.executeQuery("SELECT * FROM chengjibiao");
while(rs.next())
{int number=rs.getInt(2);
String name=rs.getString(3);
String date=rs.getString("birthday");
int math=rs.getInt("math");
int english=rs.getInt("english");
if(number==k){
show.setText("你删除了:");
show.append("学号:"+number+" 姓名:"+name+" 出生:"+date+"
数学 "+math+" 英语 "+english);
show.append("\n");
m="DELETE FROM chengjibiao WHERE number="+k+"";
sql.executeUpdate(m);
}
}
con.close();
}
catch(SQLException e)
{ System.out.println(e);
}
}
}
第六部分修改:
import java.awt.*;
import java.awt.event.*; import java.sql.*;
import javax.swing.JOptionPane; public class xiugai extends Frame implements TextListener,ActionListener{
Button charu;
TextField input1,input2,input3,input4,input5,input6;
TextArea show;
Panel p1,p2;
int k,s1,j;
Connection con;
Statement sql;
int sum=0;
ResultSet rs;
xiugai(){
p1=new Panel();
p2=new Panel();
charu= new Button("修改");
input1= new TextField(10);
input2= new TextField(10);
input3= new TextField(10);
input4= new TextField(10);
input5= new TextField(10);
input6= new TextField(10);
show= new TextArea(6,43);
p1.add(new Label("请输入要修改的学号"));
p1.add(new Label("number"));
p1.add(input1);
p2.add(new Label("请输入修改的数据"));
p2.add(new Label("name"));
p2.add(input2);
p2.add(new Label("date"));
p2.add(input3);
p2.add(new Label("math"));
p2.add(input4);
p2.add(new Label("english"));
p2.add(input5);
p2.add(charu);
charu.addActionListener(this);
show.addTextListener(this);
show.setEditable(false);
add(p1,BorderLayout.NORTH);
add(p2,BorderLayout.CENTER);
setBounds(10,30,1200,200);
setVisible(true);
validate();
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
}
});
}
public void actionPerformed(ActionEvent ee) {
boolean boo=true;
String s0,s1,s2,s3,s4,s5,insert1,recode,name,date;
int m0,m1,m2,m3,number,math,english;
s1=input1.getText();
m1=Integer.parseInt(s1);
number=m1;
s4=input4.getText();
m2=Integer.parseInt(s4);
math=m2;
s5=input5.getText();
m3=Integer.parseInt(s5);
english=m3;
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException eee)
{ System.out.println(""+eee);
}
try { con=DriverManager.getConnection("jdbc:odbc:sun","gxy","123");
sql=con.createStatement();
recode="("+m0+","+number+","+"'"+name+"'"+","+"'"+date+"'"+","+math+","
+english+")";
insert1="UPDATE chengjibiao SET math="+math+",english="+english+"
WHERE number="+number+"";
sql.executeUpdate(insert1);
} catch(SQLException e)
{ System.out.println(e);
}
}
}
第七部分添加:
import java.awt.*;
import java.awt.event.*; import java.sql.*;
import javax.swing.JOptionPane; public class charu extends Frame implements TextListener,ActionListener{
Button charu;
TextField input1,input2,input3,input4,input5,input6;
TextArea show;
int k,s1,j;
Connection con;
Statement sql;
int sum=0;
ResultSet rs;
charu(){
Panel p=new Panel();
charu= new Button("插入");
input1= new TextField(10);
input2= new TextField(10);
input3= new TextField(10);
input4= new TextField(10);
input5= new TextField(10);
input6= new TextField(10);
show= new TextArea(6,43);
p.add(new Label("请输入要插入的数据"));
p.add(new Label("ID"));
p.add(input6);
p.add(new Label("number"));
p.add(input1);
p.add(new Label("name"));
p.add(input2);
p.add(new Label("date"));
p.add(input3);
p.add(new Label("math"));
p.add(input4);
p.add(new Label("english"));
p.add(input5);
p.add(charu);
charu.addActionListener(this);
show.addTextListener(this);
show.setEditable(false);
add(p,BorderLayout.NORTH);
add(show,BorderLayout.CENTER);
setBounds(10,30,1200,200);
setVisible(true);
validate();
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
}
});
}
public void actionPerformed(ActionEvent ee) {
boolean boo=true;
String s0,s1,s2,s3,s4,s5,insert1,recode,name,date;
int m0,m1,m2,m3,number,math,english;
s0=input5.getText();
m0=Integer.parseInt(s0);
s1=input1.getText();
m1=Integer.parseInt(s1);
number=m1;
s2=input2.getText();
name=s2;
s3=input3.getText();
date=s3;
s4=input4.getText();
m2=Integer.parseInt(s4);
math=m2;
s5=input5.getText();
m3=Integer.parseInt(s5);
english=m3;
try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException eee)
{ System.out.println(""+eee);
}
try { con=DriverManager.getConnection("jdbc:odbc:sun","gxy","123");
sql=con.createStatement();
recode="("+m0+","+number+","+"'"+name+"'"+","+"'"+date+"'"+","+math+","
+english+")";
insert1="INSERT INTO chengjibiao VALUES "+recode;
sql.executeUpdate(insert1);
show.setText("你插入了:");
show.append("学号:"+number+" 姓名:"+name+" 出生:"+date+" 数学
"+math+" 英语 "+english);
show.append("\n");
}
catch(SQLException e)
{ System.out.println(e);
JOptionPane.showMessageDialog(this, "你输入的不正确");
}
}
}
四:运行效果
五
总结
初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf
:
本次课程设计,让我获益匪浅,不仅更深入的了解Java这门学科,更使自己有了继续探索的兴趣。
于个人而言,在程序设计的过程中,我深感“认真严谨”这个词的重要性,一点点小的马虎,便会导致整个程序不能正常运行。在今后的学习中,我定将“认真严谨时刻作为自的谨言。与此同时,本小组成员的互帮互助,让我体会到了团结的力量,而更让人难以忘怀的是在热烈讨论问题时,那激情横溢的场面。总之,此次课程设计在我的学生生涯中启上了至关重要的作用。
最后,真诚的感谢彭老师的指导和教诲。