java项目学生成绩管理系统.docx
《java项目学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《java项目学生成绩管理系统.docx(54页珍藏版)》请在冰豆网上搜索。
java项目学生成绩管理系统
《Java程序设计实训》
学生成绩管理系统
设计数据库:
CREATEDATABASE学生成绩管理系统
(1)教师信息表创建:
createtable教师信息表(
教师IDvarchar(8)primarykey,
教师姓名varchar(8)notnullunique,
登录密码varchar(8)notnull,
)
(2)学籍信息表创建:
createtable学籍信息表(
学号varchar(15)primarykey,
姓名varchar(8)notnull,
年龄varchar(10),
出生日期varchar(10),
性别varchar(4),
班级varchar(8)notnull,
专业varchar(5),
民族varchar(10),
登录密码varchar(6)notnull)
(3)成绩信息表创建:
createtable成绩信息表(
学号varchar(15),
计算机网络varchar(8),
计算机专业英语smallint,
计算机信息技术基础smallint,
Java程序设计smallint,
数据库应用实训教程smallint,
高等数学smallint,
Xmlsmallint,)
概要结构分析:
学生成绩管理系统登录界面
1.登录界面和主界面
importjavax.swing.*;
importjavax.swing.table.DefaultTableModel;
importjava.awt.*;
importjava.awt.event.*;
importjava.sql.*;
classmyConnection{ResultSetre;
publicmyConnection(){}
publicResultSetgetResult(Stringsql){
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connectionconn=DriverManager.getConnection("jdbc:
odbc:
学生成绩管理系统","ww","123");
Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSetre=stmt.executeQuery(sql);
returnre;}
catch(Exceptione){
System.out.println("getResult------"+e.toString());
returnnull;}}
publicbooleanexecuteSql(Stringsql){
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connectionconn=DriverManager.getConnection("jdbc:
odbc:
学生成绩管理系统","ww","123");
Statementstmt=conn.createStatement();
stmt.executeUpdate(sql);
mit();
returntrue;}
catch(Exceptione){
System.out.println("executeSql----"+e.toString());
returnfalse;}}}
classstuMainFrameextendsJFrameimplementsActionListener
{JMenuBarjmb=newJMenuBar();
Message=newJMenu("信息");
JMenuScore=newJMenu("查询");
JMenuItemItem1=newJMenuItem("添加学生信息");
JMenuItemmName=newJMenuItem("学生成绩查询");
JMenuItemmScore=newJMenuItem("按成绩查询");
JMenuItemmNam1=newJMenuItem("查询学生信息");
JLabellabel=newJLabel();
publicstuMainFrame(){ImageIconicon=newImageIcon("src/images/1.jpg");
label.setIcon(icon);
label.setBounds(0,0,icon.getIconWidth(),icon.getIconHeight());
add(label);
setSize(label.getWidth(),label.getHeight());
this.setJMenuBar(jmb);
jmb.add(Message);
jmb.add(Score);
Message.add(Item1);
Score.add(mNam1);
Score.add(mName);
Score.add(mScore);
Item1.addActionListener(this);
mName.addActionListener(this);
mScore.addActionListener(this);
mNam1.addActionListener(this);}
publicvoidactionPerformed(ActionEvente)
{if(e.getSource()==Item1)
{newaddForm().setVisible(true);}
elseif(e.getSource()==mName)
{dispose();
newScore1().setVisible(true);}
elseif(e.getSource()==mScore)
{newscoreQueryForm().setVisible(true);}
elseif(e.getSource()==mNam1)
{dispose();
newSerch1().setVisible(true);}}}
classmainFrameextendsJFrameimplementsActionListener{
JLabellabel=newJLabel();
JMenuBarmBar=newJMenuBar();
JPanelp=newJPanel();
privateJMenumSystem,mOperate,mQuery,mHelp,myMenuUser;
privateJMenuItemmFile,mNew,mOpen,mExit,mAdd,mDel,mModify,mName,miShow,mScore,mAbout,miUser,mAddSc;
publicmainFrame()
{this.setJMenuBar(mBar);
ImageIconicon=newImageIcon("src/images/1.jpg");
label.setIcon(icon);
label.setBounds(0,0,icon.getIconWidth(),icon.getIconHeight());
add(label);
setSize(label.getWidth(),label.getHeight());
myMenuUser=newJMenu("用户");
miUser=newJMenuItem("编辑用户");
myMenuUser.add(miUser);
mSystem=newJMenu("系统");
mOperate=newJMenu("数据操作");
mQuery=newJMenu("查询");
mHelp=newJMenu("帮助");
mBar.add(mSystem);
mBar.add(mOperate);
mBar.add(mQuery);
mBar.add(mHelp);
mBar.add(myMenuUser);
mFile=newJMenuItem("文件");
mNew=newJMenuItem("新建");
mOpen=newJMenuItem("打开");
mExit=newJMenuItem("退出");
mSystem.add(mFile);
mSystem.add(mNew);
mSystem.add(mOpen);
mSystem.addSeparator();
mSystem.add(mExit);
mAdd=newJMenuItem("添加基本信息");
mAddSc=newJMenuItem("添加成绩信息");
mDel=newJMenuItem("删除");
mModify=newJMenuItem("修改");
mOperate.add(mAdd);
mOperate.add(mAddSc);
mOperate.add(mDel);
mOperate.add(mModify);
mName=newJMenuItem("查询学生信息");
mScore=newJMenuItem("查询学生成绩");
miShow=newJMenuItem("全部显示");
mQuery.add(mName);
mQuery.add(mScore);
mQuery.addSeparator();
mQuery.add(miShow);
mAbout=newJMenuItem("软件信息");
mHelp.add(mAbout);
mExit.addActionListener(this);
mAdd.addActionListener(this);
mDel.addActionListener(this);
mModify.addActionListener(this);
mName.addActionListener(this);
mScore.addActionListener(this);
mAbout.addActionListener(this);
miShow.addActionListener(this);
miUser.addActionListener(this);
mAddSc.addActionListener(this);}
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==mExit){
dispose();
newCJ().setVisible(true);}
elseif(e.getSource()==mAbout){
JOptionPane.showMessageDialog(this,"学生成绩管理系统\n\n电信学院\n\n2012年3月","软件信息",JOptionPane.INFORMATION_MESSAGE);}
elseif(e.getSource()==mAdd){
dispose();
newaddForm().setVisible(true);}
elseif(e.getSource()==mAddSc){
dispose();
newaddScore().setVisible(true);}
elseif(e.getSource()==mDel){
dispose();
newdeleteForm().setVisible(true);}
elseif(e.getSource()==mName){
dispose();
newSerch().setVisible(true);}
elseif(e.getSource()==mScore){
dispose();
newScore().setVisible(true);}
elseif(e.getSource()==mModify){
newmodifyForm().setVisible(true);}
elseif(e.getSource()==miUser){
newuserFrame().setVisible(true);}
elseif(e.getSource()==miShow){
newfreshTable().setVisible(true);}}}
classCJextendsJFrameimplementsActionListener{
JLabelt1=newJLabel("ID号:
");
JLabelt3=newJLabel("密码:
");
JLabellabel=newJLabel();
publicStringzh=null;
JTextFieldt2=newJTextField(null,15);
JTextFieldt4=newJPasswordField(null,15);
JRadioButtonb=newJRadioButton("教师");
JRadioButtonb1=newJRadioButton("学生");
JButtonjB1=newJButton("登录");
JButtonjB2=newJButton("取消");
publicCJ(){super("学生生成绩管理系统");
setLayout(null);
jB1.setBounds(110,170,60,20);
jB1.setBackground(Color.red);
add(jB1);
jB2.setBounds(210,170,60,20);
jB2.setBackground(Color.red);
add(jB2);
t1.setBounds(90,50,80,35);
add(t1);
t2.setBounds(120,50,150,35);
add(t2);
t3.setBounds(90,100,80,35);
add(t3);
t4.setBounds(120,100,150,35);
add(t4);
b.setBounds(200,20,70,30);
b1.setBounds(120,20,70,30);
ButtonGroupbg=newButtonGroup();
b.setSelected(false);
b1.setSelected(true);
b1.setSelected(false);
add(b);bg.add(b);add(b1);bg.add(b1);
b.setContentAreaFilled(false);
b1.setContentAreaFilled(false);
ImageIconicon=newImageIcon("src/images/a.jpg");
label.setIcon(icon);
label.setBounds(0,0,icon.getIconWidth(),icon.getIconHeight());
add(label);
setSize(label.getWidth(),label.getHeight());
setResizable(false);
setVisible(true);
setLocation(300,300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jB1.addActionListener(this);
jB2.addActionListener(this);}
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==jB2){
System.exit(0);}
elseif(e.getSource()==jB1){
Stringusername,password;
username=t2.getText();
password=t4.getText();
if(b.isSelected()){
if(username.toString().equals("")){
JOptionPane.showMessageDialog(null,"请输入用户名","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}
elseif(password.toString().equals("")){
JOptionPane.showMessageDialog(null,"请输入密码","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}
else{
myConnectionconn=newmyConnection();
ResultSetrs;
Stringsql="select*from教师信息表where教师ID='"+username.toString()+"'and登录密码='"+password.toString()+"'";
try{
rs=conn.getResult(sql);
rs.last();
if(rs.getRow()==1)
{setVisible(false);
rs.beforeFirst();
while(rs.next()){
this.dispose();
sql="select*from学籍信息表";
mainFramemf=newmainFrame();
mf.setLayout(null);
mf.setVisible(true);
mf.setLocation(300,300);
mf.setResizable(false);
mf.setTitle("学生成绩管理系统:
教师登录界面");
mf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mf.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
});
JOptionPane.showMessageDialog(null,rs.getString("教师姓名")+"老师!
您好!
欢迎登录学生成绩管理系统!
");}
}
else{
JOptionPane.showMessageDialog(null,"用户名或密码错误","登录失败",JOptionPane.INFORMATION_MESSAGE);
}
}
catch(Exceptioner){
System.out.println(er.toString());
}
}
}
if(b1.isSelected()){
if(username.toString().equals("")){
JOptionPane.showMessageDialog(null,"请输入用户名","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}
elseif(password.toString().equals("")){
JOptionPane.showMessageDialog(null,"请输入密码","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}
else{
myConnectionconn=newmyConnection();
ResultSetrs;
Stringsql="select*from学籍信息表where学号='"+t2.getText().toString()+"'and登录密码='"+t4.getText().toString()+"'";
try{
rs=conn.getResult(sql);
rs.last();
if(rs.getRow()==1)
{setVisible(false);
rs.beforeFirst();
while(rs.next()){
this.dispose();
sql="select*from学籍信息表";
stuMainFramesmf=newstuMainFrame();
smf.setSize(500,400);
smf.setVisible(true);
smf.setResizable(false);smf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
smf.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);