package GradeManage;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.JTableHeader;
public class ScoreSectionForm extends JFrame implements ActionListener{
JLabel labClass=new JLabel("\u73ED\u7EA7\uFF1A");
JLabel labLesson=new JLabel("\u79D1\u76EE\uFF1A(Chinese,Math,English)");
JTextField txtClass=new JTextField(20);
JTextField txtLesson=new JTextField(20);
JButton btnSection1=new JButton("\u4E0D\u53CA\u683C(0-59)");
JButton btnSection2=new JButton("\u4E2D(60-69)");
JButton btnSection3=new JButton("\u826F(70-79)");
JButton btnSection4=new JButton("\u4F18\u79C0(80-89)");
JButton btnSection5=new JButton("\u975E\u5E38\u4F18\u79C0(90-100)");
JPanel pan1=new JPanel();
JPanel pan2=new JPanel();
String []str={"班级","姓名","学号","成绩"};
Object[][] data=new Object[50][4];
JTable table=new JTable(data,str);
JTableHeader head=table.getTableHeader();
JScrollPane jsp=new JScrollPane(table); //滚动
Statement sql;
ResultSet rs;
ScoreSectionForm(){
super("分数段查询");
setSize(500,400);
setLocation(500,200);
labClass.setHorizontalAlignment(SwingConstants.CENTER);
pan1.add(labClass);
pan1.add(txtClass);
labLesson.setHorizontalAlignment(SwingConstants.CENTER);
pan1.add(labLesson);
pan1.add(txtLesson);
pan1.add(btnSection1);
pan1.add(btnSection2);
pan1.add(btnSection3);
pan1.add(btnSection4);
pan1.add(btnSection5);
pan1.setLayout(new GridLayout(5,2)); //以上3条在第一个面板加入内容
getContentPane().add(pan1,"North"); //把面板1放到窗口顶部
pan2.setLayout(new BorderLayout());
pan2.add(head,"North"); //将表头放在面板3的顶部
pan2.add(jsp,"Center"); //表格放在pan3中间
getContentPane().add(pan2,"Center"); //把面板3整体加入到主窗口中
btnSection1.addActionListener(this); //增加查询按钮的监视器
btnSection2.addActionListener(this);
btnSection3.addActionListener(this);
btnSection4.addActionListener(this);
btnSection5.addActionListener(this);
setVisible(true);
}
public void actionPerformed(ActionEvent ae){
if(ae.getSource()==btnSection1){
int i,j,row;
MysqlForm.con=MysqlForm.getConnection();
try{sql=MysqlForm.con.createStatement();
rs=sql.executeQuery("select COUNT(*) as rowcount from stu where class ='"+txtClass.getText()+"'"); //寻找有成绩的行数
rs.next(); //去掉头
row=rs.getInt("rowcount");
rs.close();
data=new Object[row][5];
rs=sql.executeQuery("select class,name,id,"+txtLesson.getText()+" from stu where class = '"+txtClass.getText()+"' and "+txtLesson.getText()+"<60");
i=0;
j=0;
while(rs.next()){
data[i][j++]=rs.getString("class");
data[i][j++]=rs.getString("name");
data[i][j++]=rs.getString("id");
data[i][j]=new Integer(rs.getInt(txtLesson.getText())); //将数据库中查询到的信息保存到data中
i++;
j=0;
}
pan2.removeAll();
getContentPane().remove(pan2);
table=new JTable(data,str);
pan2.setLayout(new BorderLayout());
head=table.getTableHeader();
jsp=new JScrollPane(table);
pan2.add(head,"North");
pan2.add(jsp,"Center");
getContentPane().add(pan2,"Center");
this.validate();
MysqlForm.closeConnection();
}catch(SQLException e){
}
}
else if(ae.getSource()==btnSection2){
int i,j,row;
MysqlForm.con=MysqlForm.getConnection();
try{sql=MysqlForm.con.createStatement();
rs=sql.executeQuery("select COUNT(*) as rowcount from stu where class ='"+txtClass.getText()+"'"); //寻找有成绩的行数
rs.next(); //去掉头
row=rs.getInt("rowcount");
rs.close();
data=new Object[row][5];
rs=sql.executeQuery("select class,name,id,"+txtLesson.getText()+" from stu where class = '"+txtClass.getText()+"' and "+txtLesson.getText()+">59 and "+txtLesson.getText()+"<70");
i=0;
j=0;
while(rs.next()){
data[i][j++]=rs.getString("class");
data[i][j++]=rs.getString("name");
data[i][j++]=rs.getString("id");
data[i][j]=new Integer(rs.getInt(txtLesson.getText())); //将数据库中查询到的信息保存到data中
i++;
j=0;
}
pan2.removeAll();
getContentPane().remove(pan2);
table=new JTable(data,str);
pan2.setLayout(new BorderLayout());
head=table.getTableHeader();
jsp=new JScrollPane(table);
pan2.add(head,"North");
pan2.add(jsp,"Center");
getContentPane().add(pan2,"Center");
this.validate();
MysqlForm.closeConnection();
}catch(SQLException e){
}
}
else if(ae.getSource()==btnSection3){
int i,j,row;
MysqlForm.con=MysqlForm.getConnection();
try{sql=MysqlForm.con.createStatement();
rs=sql.executeQuery("select COUNT(*) as rowcount from stu where class ='"+txtClass.getText()+"'"); //寻找有成绩的行数
rs.next(); //去掉头
row=rs.getInt("rowcount");
rs.close();
data=new Object[row][5];
rs=sql.executeQuery("select class,name,id,"+txtLesson.getText()+" from stu where class = '"+txtClass.getText()+"' and "+txtLesson.getText()+">69 and "+txtLesson.getText()+"<80");
i=0;
j=0;
while(rs.next()){
data[i][j++]=rs.getString("class");
data[i][j++]=rs.getString("name");
data[i][j++]=rs.getString("id");
data[i][j]=new Integer(rs.getInt(txtLesson.getText())); //将数据库中查询到的信息保存到data中
i++;
j=0;
}
pan2.removeAll();
getContentPane().remove(pan2);
table=new JTable(data,str);
pan2.setLayout(new BorderLayout());
head=table.getTableHeader();
jsp=new JScrollPane(table);
pan2.add(head,"North");
pan2.add(jsp,"Center");
getContentPane().add(pan2,"Center");
this.validate();
MysqlForm.closeConnection();
}catch(SQLException e){
}
}
else if(ae.getSource()==btnSection4){
int i,j,row;
MysqlForm.con=MysqlForm.getConnection();
try{sql=MysqlForm.con.createStatement();
rs=sql.executeQuery("select COUNT(*) as rowcount from stu where class ='"+txtClass.getText()+"'"); //寻找有成绩的行数
rs.next(); //去掉头
row=rs.getInt("rowcount");
rs.close();
data=new Object[row][5];
rs=sql.executeQuery("select class,name,id,"+txtLesson.getText()+" from stu where class = '"+txtClass.getText()+"' and "+txtLesson.getText()+">79 and "+txtLesson.getText()+"<90");
i=0;
j=0;
while(rs.next()){
data[i][j++]=rs.getString("class");
data[i][j++]=rs.getString("name");
data[i][j++]=rs.getString("id");
没有合适的资源?快使用搜索试试~ 我知道了~
JAVA+MySQL学生成绩管理系统
共34个文件
class:17个
java:14个
prefs:1个
4星 · 超过85%的资源 需积分: 35 584 下载量 54 浏览量
2017-12-08
11:29:35
上传
评论 118
收藏 61KB ZIP 举报
温馨提示
程序是使用java编写的,实现学生成绩的录入,查询,修改以及删除等功能,通过连接数据库对数据的存储,采用Java中Swing图形用户界面平台进行操作实现简单的数据操作。
资源推荐
资源详情
资源评论
收起资源包目录
学生成绩管理系统.zip (34个子文件)
学生成绩管理系统
GradeManage
src
GradeManage
DeleteForm.java 6KB
enter.java 4KB
AddForm.java 4KB
QueryForm.java 4KB
MysqlForm.java 1KB
ScoreSectionForm.java 10KB
TAddForm.java 3KB
TDeleteForm.java 5KB
TModifyForm.java 5KB
ScoreQueryForm.java 3KB
TQueryForm.java 3KB
ScoreSortForm.java 4KB
MainForm.java 4KB
ModifyForm.java 5KB
bin
GradeManage
TQueryForm.class 4KB
MysqlForm.class 2KB
MyPanel.class 726B
enter$1.class 1KB
enter$2.class 897B
ModifyForm.class 5KB
TDeleteForm.class 5KB
DeleteForm.class 5KB
ScoreQueryForm.class 4KB
ScoreSectionForm.class 7KB
TModifyForm.class 5KB
MainForm.class 4KB
AddForm.class 5KB
TAddForm.class 4KB
ScoreSortForm.class 5KB
QueryForm.class 5KB
enter.class 3KB
.classpath 377B
.settings
org.eclipse.jdt.core.prefs 598B
.project 387B
共 34 条
- 1
yangmufei
- 粉丝: 8
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页