当前位置:城玮文档网 >作文大全 > 二级课题,二级实践课题,学生信息管理系统

二级课题,二级实践课题,学生信息管理系统

时间:2022-08-13 11:15:03 来源:网友投稿

 中 中 原 工 学 院 二

 级

 课

 题

 实

 训

 任

 务

 书

  2011 年 6 月 13 日 学生姓名 孙玉祥 学号

 201007132230 专 专

 业 软件编码 班级

 码 编码 104 课题名称 学生信息管理系统

 课题来源 二级实践模拟课题 指导教师 郭彦宾 专业 计算机科学与技术

 职称 集成项目经理

  课题说明:此项目系统简单介绍了如何使数据库查询与 java 程序连接,完善系统。

 数据库涉及一个学院的一个专业中的四个班的学生信息 ,此次项目以 rjz103 和 rjz104 班的四个学生和职工号为 20100、20101、20102 三位老师可作为实验代码功 能的检测用户,以验证此系统功能。

 承担的任务:

 1.学生基本信息登录页面窗口的设计及有关数据库的合理表的建立

 2.完成程序的测试,记录程序问题的更正

 中 中 原 工 学 院 二

 级

 课

 题

 实

 训

 任

 务

 书

  2011 年 6 月 14 日 工作进度安排:

 任务名称 轴 时间轴2011-6-13 至2011-6-28 )

 (除周日)

 负责人 审核人 人 1 2 3 4 5 6 7 8 9 10 11 12

 郭彦宾 总体进度 30% 62% 8%

 整理资料

  孙 玉 祥 何 红 院 雷佳 蒋鑫 编写代码

  孙玉祥 何红院 雷佳 蒋鑫 代码测试

  孙玉祥 何红院 雷佳 蒋鑫 整理文档

  孙玉祥 何红院 雷佳 蒋

 鑫

 指导教师签字:

 2011 年

 6 月 28

 日 实训单位意见

 签章:

 年

  月

  日 见 学 院 意 见

 签章:

 年

  月

  日 中 中 原 工 学 院 二

 级

 课

 题

 实

 训

 评

 审

 表

  学号 201007132230 姓名 孙玉祥 专业 软件编码 班级 编码 104

 题目 学生信息管理系统 指 指 导 导 教 教 师 师 评 评 语 语

  成绩(百分制):

  指导教师签名:

  2011 年

  6 月 28

  日

 软 软

 件 件

 学 学

 院 院

 二级课题 实训报告

 课题名称:

 学生信息管理系统

 专

 业:

 软件编码

 班

 级:

 编码 104

 学

 号:

 201007132230

 学生姓名:

 孙玉祥

 指导教师:

  郭彦 宾

 2011 年

  6

 月

  28

 日

 摘

 要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。学生信息管理系统主要提供方便高效的管理功能,本系统是一个简单的学生信息管理系统,系统管理的信息主要是学生基本信息、课程信息和学生选课信息。系统的目的是有效地处理这些信息,同时为用户提供信息检索、信息修改和保护功能。

 关键词:数据库 MySQL 、 javaSE

  目

 录 摘 摘

 要 ............................................................................................................................................ II

 第 第 1 章 项目分析 ........................................................................................................................... 1

 1.1

 问题描述 .............................................................................................................................. 1

 1.2 技术分析 ............................................................................................................................... 1

 1.3 工程进度计划 ....................................................................................................................... 1

 第 第 2 章 系统分析与设计 ............................................................................................................... 2

 2.1 系统分析 ............................................................................................................................... 2

 2.1.1 参与者 ........................................................................................................................... 2

 2.2

 系统设计 .............................................................................................................................. 3

 2.2.1 系统体系结构设计 ........................................................................................................ 3

 2.3

 数据库设计 .......................................................................................................................... 4

 2.3.1E-R 图 ............................................................................................................................. 4

 2.3.2 关系模式 ........................................................................................................................ 4

 2.3.3 表的设计 ........................................................................................................................ 4

 第 第 3 章 实现与测试 ....................................................................................................................... 6

 3.1

 登录页面 .............................................................................................................................. 6

 3.1.1 活动图 ............................................................................................................................ 6

 3.1.2 代码 ................................................................................................................................ 6

 3.1.3 测试用例 ........................................................................................................................ 9

 3.2

 查询信息 ............................................................................................................................ 10

 3.2.1 活动图 .......................................................................................................................... 10

 3.2.2 代码 .............................................................................................................................. 10

 3.2.3 测试用例 ...................................................................................................................... 13

 3.3

 成绩查询 ............................................................................................................................ 13

 3.3.1 活动图 .......................................................................................................................... 13

 3.3.2 代码 .............................................................................................................................. 14

 3.3.1 测试用例 ...................................................................................................................... 16

 3.4

 教师信息 ............................................................................................................................ 17

 3.4.1 活动图 .......................................................................................................................... 17

 3.4.2 代码 .............................................................................................................................. 17

 3.4.3 测试用例 ...................................................................................................................... 28

 第 第 4 章 结束语 ............................................................................................................................. 29

 孙玉祥:学生信息管理系统 1 第 1 章 项目分析

 1.1 问题描述 学生信息管理系统是系统开发软件,需要连接数据库作为后台支持,因此需要一定的知识连接数据库。

 1.2 技术分析 连接数据库该软件用 java 语言编写,用 SQLServer2005 数据库作为后台的数据库进行信息的存储,用 SQL 语句完成学生学籍信息的添加,查询,修改,删除的操作以及成绩的录入,修改,删除等。

 1.3 工程进度计划

 用三天的时间做系统分析及搜集材料 分析研究做编代码前的工作 五天的时间编码 其他时间连接数据库 然后做测试并做更正

 孙玉祥:学生信息管理系统 2

 第 2 章 系统分析与设计 2.1 系统分析 教师拥有查询学生的 basicinformation 表,sc 表和 course

 并对其的修改,删除,插入,增加的权限 学生仅有对 sc 表 basicinformation 表查询权限

 选课表 sc 只能对 07132100 学生的全部课程成绩进行查询;其他学生的课程成绩没有完全录入,因此只能查询少数的几门成绩,比如 07132108 同学只能查询 c05 课程的成绩。

 登陆页面中,用户名为学生用户的学号、教师用户的教师号,密码为学号和教师号对应的密码 在登录信息模块中,指定对数据库访“学生管理系统”有访问权和操作权的用户是teachetinformation 和 studentinformation 两个表中存在的用户信息作为查询依据;

 1.登录管理模块:主要是管理登录用户。

 2.老师管理模块:实现对全校班级的管理工作,包括:学生信息游览、学生信息添加、学生信息修改等,这三个功能模块各自独立,完成学校的全部学生的管理。

 3.学生信息管理模块:实现对学生的个人信息的管理工作,信息查询、成绩查询等功能,从而方便学生对自己的信息和成绩查询。

 4.课程管理模块:该模块对各个班级的课程进行设置,并可在其中设置各门课程的教材选用情况,和记录学生的选课情况。

 5.选课管理模块:检验学生学习情况的一个主要手段,主要用来记录学生的成绩。

 6.个人信息查询模块:用于学生个人信息的查询,成绩查询两个模块。

 7. 退出模块:此模块完成程序的退出。

 该程序界面友好,功能强大,适合实际应用。

 2.1.1 参与者 孙玉祥、何红院、蒋鑫、雷佳

 孙玉祥:学生信息管理系统 3 2.2 系统设计 2.2.1 系统体系结构设计

 登录信息界面 学生信息

 教师信息 学生基本信息 学生成绩

 学生信息的增删改查

 孙玉祥:学生信息管理系统 4 2.3 数据库设计 2.3.1E-R 图

 2.3.2 关系模式 学生基本信息(学号,性别,姓名,班级,学院,出生日期,选课)

 学生用户(学号,密码,姓名)

 教师用户(职工号,密码)

  选课(学生,课程,成绩)

  课程(课程名,课程号)

 。

 2.3.3 表的设计

  学生 课程 姓名 性别 学院 班级 出生日期 选课 成绩 课程号 课程名 教师

 孙玉祥:学生信息管理系统 5 表一 . 选课表 标签 类型 注释 备注 sno char(8) 学号 主键 Cno char(8) 课程号 主键 grade tinyint 成绩

  表二.学生基本信息 basicinformation 标签 类型 注释 备注 sno char(8) 学号 主键 sname char(8) 姓名

 Ssex char(2) 性别

 brith smalldate 出 生 日期

 Sclass char(7) 班级

 school char(20) 学校

  表三.学生用户信息 studentinformation 标签 类型 注释 备注 sno char(8) 学号 主键 sname char(8) 姓名

 Spw char(2) 密码

  表四.教师用户信息 teachetinformation 标签 类型 注释 备注 Tno char(8) 教师号 主键 tpw char(8) 密码

  表五.课程表 course 标签 类型 注释 备注 cno char(8) 课程号 主键 Cname char(8) 课程名

 credit char(2) 学期

 孙玉祥:学生信息管理系统 6 第 3 章 实现与测试 3.1 登录页面 3.1.1 活动图

 3.1.2 代码 package dengluxinximokuai;

 import java.sql.*; import javax.swing.JOptionPane; public class DBConnect {

 public DBConnect(){

  }

 public Connection getconn(){

  Connection conn = null;

  try{

 Class.forName("com.mysql.jdbc.Driver");

 String URL = "jdbc:mysql://localhost:3306/test";

 conn = DriverManager.getConnection(URL);

 System.out.println("数据库已连接");

 }catch(Exception e){

 e.printStackTrace();

 孙玉祥:学生信息管理系统 7

  }

  return conn;}

 public ResultSet DBQuery(String sqlText){

  Connection conn1 = null;

  ResultSet rs = null;

  try{

 conn1 = getconn();

 Statement stmt = conn1.createStatement();

 rs = stmt.executeQuery(sqlText);//查询 sqlText 的结果集;

  }catch (Exception e){

  e.printStackTrace();

  }

  return rs;}

 public int DBUpdata(String sqlText){

  Connection conn2 = null;

  int rowCount = 0;

  try{

 conn2 = getconn();

 Statement stmt = conn2.createStatement();

 rowCount = stmt.executeUpdate(sqlText);

  }catch(Exception x){

  }

  return rowCount;}

 public static void main(String[] args) {

  // TODO 自动生成方法存根

 new DBConnect();}}

 package dengluxinximokuai;

 import java.awt.HeadlessException; import java.awt.TextField; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.sql.ResultSet; import java.sql.SQLException; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPasswordField; import javax.swing.JTextField; import xueshengxinximokuai.BasicInformation; import xueshengxinximokuai.StudentInformation; import jiaoshixinximokuai.Exit; import jiaoshixinximokuai.TeacherInformation; //dengluyemian 是一个登录页面,输入相应的用户和密码就能进入该系统; public class Dengluyemian extends JFrame

 implements ActionListener{

 孙玉祥:学生信息管理系统 8

  JLabel j1=new JLabel("用户账号:");

 JLabel j2=new JLabel("密 码:");

 JTextField user=new JTextField();

 JPasswordField p=new JPasswordField();

 JButton b1=new JButton("登录");

 JButton b2=new JButton("取消");

  JLabel j3=new JLabel("身 份");

 JComboBox jc=new JComboBox();

  public Dengluyemian(){

 this.setTitle("学生信息管理系统");

 this.setLayout(null);

  j1.setBounds(100,40,100,20);

 this.add(j1);

 user.setBounds(200,40,80,20);

 this.add(user);

 j2.setBounds(100, 100, 60, 20);

 this.add(j2);

 p.setBounds(200, 100, 80, 20);

 this.add(p);

 j3.setBounds(100, 150, 60, 20);

 this.add(j3);

 jc.setBounds(200, 150, 80, 20);

 this.add(jc);

 jc.addItem(new String("学生"));

 jc.addItem(new String("教师"));

 b1.setBounds(100, 200, 60, 20);

 this.add(b1);

 b1.addActionListener(this);

 b2.setBounds(200,200,60,20);

 this.add(b2);

 b2.addActionListener(this);

 this.setVisible(true);

 this.setBounds(10,10,450,280);

 addWindowListener(new WindowAdapter(){

  public void windowClosing(WindowEvent e){

 System.exit(0);

  }}); }

  public void actionPerformed(ActionEvent e) { // 对“登录”按钮做的监听器;连接到数据库“学生信息管理系统”中; // 若 user 中的用户在 studentinformation 表或 teacherinformation 中能查到而且密码正确; // 那么选择”学生“时,单击”登录“按钮会进入”学生信息模块“;选择”教师“时,单击”登录“按钮会进入”教师信息模块“; // 若此用户不能查到弹出此“用户不存在!”消息对话框;若此用户密码不正确输出“密

 孙玉祥:学生信息管理系统 9 码错误,重新输入!”提示 // 此登录页面也能对用户密码进行改写,并保存到数据库中;

 if(e.getSource()==b1)

 {

 String snumber=user.getText();

  String password=new String(p.getPassword());

  String box=(String)jc.getSelectedItem();

 DBConnect conn = new DBConnect();

 if(box.equals("学生")){

  String sql ="select * from studentinformation where sno =" + snumber + " and spw = " + password + " ";

 ResultSet connt =conn.DBQuery(sql);

 try {

  if(connt.next()){

 new

 StudentInformation();

 }else {

 JOptionPane.showMessageDialog(null,"此用户不存在!");} } catch (HeadlessException e1) {

  e1.printStackTrace();

 } catch (SQLException e1) {

  e1.printStackTrace();}}

  else if(box.equals("教师")){

 String sql ="select * from teacherinformation where tno =" + snumber + " and tpw = " + password + " ";

  ResultSet connt =conn.DBQuery(sql);

 try {if(connt.next()){

 new TeacherInformation();

 }else {

 JOptionPane.showMessageDialog(null,"此用户不存在!");}

 } catch (HeadlessException e1) {

  // TODO 自动生成 catch 块

  e1.printStackTrace();

 } catch (SQLException e1) {

  // TODO 自动生成 catch 块

  e1.printStackTrace();}}}

 if(e.getSource() == b2)

 {setVisible(false);}} public static void main(String[]args){

  new Dengluyemian();

  } } 3.1.3 测试用例 输入一个账号如“07132100”,再输入此账号的唯一密码如 07132100,选择用户身份后 便可成功登录,然后可以继续执行其他的功能。

 孙玉祥:学生信息管理系统 10 3.2 查询信息 3.2.1 活动图

 3.2.2 代码 package xueshengxinximokuai; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter;

 孙玉祥:学生信息管理系统 11 import java.awt.event.WindowEvent; import java.sql.ResultSet; import java.sql.SQLException; import javax.swing.*; import dengluxinximokuai.*; import jiaoshixinximokuai.AddInformation; import jiaoshixinximokuai.Exit; public class BasicInformation extends JFrame {

 JLabel label0 = new JLabel("学生基本信息");

 JLabel lxh = new JLabel("请输入学号");

 JLabel lname= new JLabel("姓名");

 JLabel lsex= new JLabel("性别");

 JLabel lsexb= new JLabel("男");

 JLabel lsexg= new JLabel("女");

 JLabel lclass = new JLabel("班级");

 JLabel lbrith = new JLabel("生日");

 JLabel lxy = new JLabel("学院");

 JTextField jtxh = new JTextField(8);

 JTextField jtname = new JTextField(8);

 JTextField jtsex = new JTextField(2);

 JTextField jtclass = new JTextField(6);

 JTextField jtbrith = new JTextField(20);

 JTextField jtxy = new JTextField(20);

  JComboBox jcb = new JComboBox();

 JButton jb1 = new JButton("查询");

 JButton jb2 = new JButton("重置");

 JButton jb3 = new JButton("退出");

 ButtonGroup

 bg= new ButtonGroup();

 JRadioButton

 jrb= new JRadioButton("男");

 JRadioButton

 jrg = new JRadioButton("女");

 public BasicInformation(){

 setLayout(null);

  setTitle("学生基本信息");

  setSize(630,360);

  setVisible(true);

  setLocation(0,0);

  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  add(label0);add(lxh);

  add(lname);add(lsex);

  add(lclass);add(lbrith);

  add(lxy);add(jtxh);

  add(jtname);add(jtclass);

  add(jtbrith);add(jtxy);

  add(jb1);add(jb2);

  add(jb3);add(jrb);

  add(jrg);

  bg.add(jrb);bg.add(jrg);

  add(lsexb);add(lsexg);

  label0.setBounds(180, 40,100, 20);

 孙玉祥:学生信息管理系统 12

  lxh.setBounds(160, 60, 100, 20);

  lname.setBounds(160, 80, 30, 20);

  lsex.setBounds(160, 100, 30, 20);

  jcb.addItem(new String("大学高等数学"));

  jcb.addItem(new String("大学高等英语"));

  jcb.addItem(new String("大学体育"));

  jcb.addItem(new String("JAVA 语言程序设计"));

  jcb.addItem(new String("C++语言程序设计"));

  jcb.addItem(new String("软件工程"));

  jcb.addItem(new String("HTML 开发与设计"));

  this.add(jcb);

 jrb.setBounds(240, 100, 20, 20);

  jrg.setBounds(280, 100, 20, 20);

  lsexb.setBounds(260, 100, 20, 20);

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

  lclass.setBounds(160, 120, 30, 20);

  lbrith.setBounds(160, 160, 60, 20);

  jtxh.setBounds(240, 60, 100, 20);

  jtname.setBounds(240, 80, 100, 20);

  jtclass.setBounds(240,120, 100, 20);

  jtbrith.setBounds(240,160,100,20);

  jb1.setBounds(100, 260, 80, 20);

  jb2.setBounds(200, 260, 80, 20);

  jb3.setBounds(300, 260, 80, 20);

 lxy.setBounds(160,180,30,20);

 jtxy.setBounds(240,180,100,20);

 //

 为按扭添加事件监听器

 jb1.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根,,jb1 为查询按钮

  if(e.getSource() == jb1){

 String no

 = jtxh.getText();

 String name=jtname.getText();

 String sclas= jtclass.getText();

 String sex

 = "女";

 if(jrb.isSelected());

 sex = "男";

 String

 sbrith = jtbrith.getText();

 String

 sschool = jtxy.getText();

 String sql = "select * from BasicInformation where sno =" + no + "";

 try {

  DBConnect conn = new DBConnect();//打开数据库连接,

 ResultSet rs = conn.DBQuery(sql);//取得结果查询;

 if(rs.next())//判断结果是否存在;

 { String num = rs.getString(1);

  jtxh.setText(num);

  String sname = rs.getString(2);

  jtname.setText(sname);

 孙玉祥:学生信息管理系统 13

  String sclass = rs.getString(5);

  jtclass.setText(sclass);

 String ssex

 = rs.getString(3);

  if(jrb.isSelected())

  jrb.setText(ssex);

  else

 jrg.setText(ssex);

  String

 brith = rs.getString(4);

  jtbrith.setText(brith);

  String

 school = rs.getString(6);

  jtxy.setText(school);}

 else {

  JOptionPane.showMessageDialog(null,"查询学生信息不存在");

 }} catch (SQLException e1) {

  // TODO 自动生成 catch 块

  e1.printStackTrace();

 }} } });

  jb2.addActionListener(new ActionListener(){

  public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource() == jb2){

 jtxh.setText(null);

  jtname.setText(null);

  jtsex.setText(null);

  jtclass.setText(null);

  jtbrith.setText(null);

  jtxy.setText(null);}}});

  jb3.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource() == jb3)

 setVisible(false);

 }});}

 public static void main(String[] args) {

  new BasicInformation();

  }} 3.2.3 测试用例 输入一个学号“07132101”,然后点击查询 ,便可显示此学生的基本信息了。

 3.3 成绩查询 3.3.1 活动图

 孙玉祥:学生信息管理系统 14

 3.3.2 代码 package xueshengxinximokuai;

 import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.swing.*; import dengluxinximokuai.DBConnect; import jiaoshixinximokuai.Exit; public class SelectGrade extends JFrame{

  JLabel label0 = new JLabel("成 绩 查 询");

 JLabel lxh = new JLabel("请输入学号:");

 JLabel lcno= new JLabel("课程号:");

 JLabel lgrade= new JLabel("成绩:");

 JTextField jtxh = new JTextField(8);

 孙玉祥:学生信息管理系统 15

 JTextField jtcno = new JTextField(8);

 JTextField jtgrade = new JTextField();

  JButton jb1 = new JButton("查询");

 JButton jb2 = new JButton("重置");

 JButton jb3 = new JButton("退出");

  public SelectGrade(){

 setLayout(null);

  setTitle("查询学生基本信息");

  setSize(630,360);

  setVisible(true);

  setLocation(0,0);

  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  add(label0);add(lxh);

  add(lcno); add(lgrade);

  add(jtxh); add(jtcno);

  add(jtgrade); add(jb1);

  add(jb2); add(jb3);

  label0.setBounds(180, 60,100, 20);

  lxh.setBounds(140, 80, 120, 20);

  lcno.setBounds(140, 100, 80, 20);

  lgrade.setBounds(140, 120, 30, 20);

  jtxh.setBounds(240, 80, 60, 20);

  jtcno.setBounds(240, 100, 60, 20);

  jtgrade.setBounds(240, 120, 60, 20);

  jb1.setBounds(100, 200, 80, 20);

  jb2.setBounds(200, 200, 80, 20);

  jb3.setBounds(300, 200, 80, 20);

 //

 为按扭添加事件监听器

 jb1.addActionListener(new ActionListener(){

  public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource() == jb1){

  String snumber = jtxh.getText();

  String cnumber = jtcno.getText();

  String sql ="select * from sc

 where

 sno = ""+snumber+""and cno =""+cnumber+""

  ";//

  try {

 DBConnect conn = new DBConnect();//打开数据库连接,

  ResultSet rs = conn.DBQuery(sql);//取得结果查询;

  if(rs.next())//判断结果是否存在;

  { String

 sgrade = rs.getString(3);

 jtgrade.setText(sgrade);}

  else {

 JOptionPane.showMessageDialog(null,"查询成绩不存在");

  } } catch (SQLException e1) {

 // TODO 自动生成 catch 块

 e1.printStackTrace();}}}});

  jb2.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

 孙玉祥:学生信息管理系统 16

  // TODO 自动生成方法存根

  if(e.getSource() == jb2)

  jtxh.setText(null);

  jtcno.setText(null);

  jtgrade.setText(null);

 }}); //

 将退出按钮添加到面板 2 中 并为其设置监听器

  jb3.addActionListener(new ActionListener(){

  public void actionPerformed(ActionEvent arg0) {

  // TODO 自动生成方法存根

  setVisible(false); } });}

 public static void main(String[] args) {

  // TODO 自动生成方法存根

  new SelectGrade(); }}

 3.3.1 测试用例 输入学号“07132101” 再输入此学生的某门所选课程号如

 C07,就能查出这门课程的分数了。

 孙玉祥:学生信息管理系统 17 3.4 教师信息 3.4.1 活动图

 3.4.2 代码 package jiaoshixinximokuai; import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.sql.ResultSet;

 import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel;

 孙玉祥:学生信息管理系统 18 import javax.swing.JOptionPane; import javax.swing.JRadioButton; import javax.swing.JTextField;

 import dengluxinximokuai.DBConnect;

 public class AddInformation extends JFrame{

  JLabel label0 = new JLabel("添加学生基本信息");

  JLabel lxh = new JLabel("请输入学号");

 JLabel lname= new JLabel("姓名");

 JLabel lsex= new JLabel("性别");

 JLabel lsexb= new JLabel("男");

 JLabel lsexg= new JLabel("女");

 JLabel lclass = new JLabel("班级");

 JLabel lbrith = new JLabel("生日");

 JLabel lxy = new JLabel("学院");

 JTextField jtxh = new JTextField(8);

 JTextField jtname = new JTextField(8);

 JTextField jtclass = new JTextField(6);

 JTextField jtgrade = new JTextField();

 JTextField jtbrith = new JTextField(20);

 JTextField jtxy = new JTextField(20);

  JComboBox jcb = new JComboBox();

  JButton jb1 = new JButton("添加");

 JButton jb2 = new JButton("重置");

 JButton jb3 = new JButton("退出");

 ButtonGroup

 bg= new ButtonGroup();

 JRadioButton

 jrb= new JRadioButton("男");

 JRadioButton

 jrg = new JRadioButton("女");

 public AddInformation(){

 setLayout(null);

 setTitle("添加学生基本信息");

  setSize(630,360);

  setVisible(true);

  setLocation(0,0);

  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  add(label0); add(lxh);

 add(lname); add(lsex);

  add(lclass); add(lbrith);

  add(lxy); add(jtxh);

  add(jtname); add(jtclass);

  add(jtbrith); add(jtxy);

  add(jb1); add(jb2);

  add(jb3); add(jrb);

 孙玉祥:学生信息管理系统 19

  add(jrg);

  bg.add(jrb); bg.add(jrg);

  add(lsexb);

 add(lsexg);

 label0.setBounds(180, 40,120, 20);

  lxh.setBounds(160, 60, 100, 20);

  lname.setBounds(160, 80, 30, 20);

  lsex.setBounds(160, 100, 30, 20);

  lsexb.setBounds(260, 100, 20, 20);

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

  jrb.setBounds(240, 100, 20, 20);

  jrg.setBounds(280, 100, 20, 20);

  lclass.setBounds(160, 120, 30, 20);

  jcb.setBounds(360,140,120,20);

 lbrith.setBounds(160, 150, 60, 20);

  jtxh.setBounds(240, 60, 100, 20);

  jtname.setBounds(240, 80, 100, 20);

  jtclass.setBounds(240,120, 100, 20);

  jtbrith.setBounds(240,150,100,20);

  jb1.setBounds(100, 260, 80, 20);

  jb2.setBounds(200, 260, 80, 20);

  jb3.setBounds(300, 260, 80, 20);

 lxy.setBounds(160,175,30,20);

 jtxy.setBounds(240,175,100,20);

 //

 为按扭添加事件监听器

 jb1.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

  if(e.getSource() == jb1){

 String no

 = jtxh.getText();

 String name=jtname.getText();

 String sclas= jtclass.getText();

 String sex

 = "女";

 if(jrb.isSelected());

 sex = "男";

  String

 sbrith = jtbrith.getText();

 String

 sschool = jtxy.getText();

 String sql = "select * from BasicInformation where sno ="" + no + """;

 String box=(String)jcb.getSelectedItem();

 try{

  DBConnect

 con = new DBConnect();

  ResultSet rst =con.DBQuery(sql);

 if(!rst.next())

  {

 sql = "insert into BasicInformation(sno,sname,ssclass,ssex,brith,school) values (""+ no +"", ""+name+"",""+sclas+"" ,""+sex+"" , ""+sbrith+"" ,""+sschool+"" )";

 int n = con.DBUpdata(sql);//对数据库进行更新;

 if(n>0)

  JOptionPane.showMessageDialog(null,"基本信息添加成功!");

 else

 孙玉祥:学生信息管理系统 20

  JOptionPane.showMessageDialog(null,"基本信息添加失败!");

  }

 else

 {

  JOptionPane.showMessageDialog(null,"此用户已存在!");

 }

 } catch (Exception e1) {

 e1.printStackTrace();

  }

 } } });

  jb2.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource() == jb2){

 jtxh.setText(null);

  jtname.setText(null);

  jtclass.setText(null);

  jtbrith.setText(null);

  jtxy.setText(null);

  } } });

  jb3.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource() == jb3)

 setVisible(false);

 } }); }

 public static void main(String[] args) {

  new AddInformation(); }}

 import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.sql.ResultSet; import java.sql.SQLException; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JRadioButton; import javax.swing.JTextField; import dengluxinximokuai.DBConnect; public class AlterGrade extends JFrame{

 JLabel label0 = new JLabel("修改学生成绩");

 JLabel lxh = new JLabel("请输入学号");

 JLabel lcno= new JLabel("请输入课程号 ");

 JLabel lgrade= new JLabel("成绩");

  JTextField jtxh = new JTextField(8);

 JTextField jtcno = new JTextField(8);

 孙玉祥:学生信息管理系统 21

 JTextField jtgrade = new JTextField(6);

  JButton jbalter = new JButton("修改");

 JButton jbdelete = new JButton("删除");

 JButton jbadd = new JButton("增加");

 JButton jbreset = new JButton("重置");

 JButton jbexit = new JButton("退出");

 public AlterGrade(){

 setLayout(null);

  setTitle("修改学生成绩");

  setSize(640,360);

  setVisible(true);

  setLocation(0,0);

  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  add(label0); add(lxh);

  add(lcno); add(lgrade);

  add(jtxh); add(jtcno);

  add(jtgrade); add(jbalter);

  add(jbalter); add(jbdelete);

  add(jbadd); add(jbreset);

  add(jbexit);

  label0.setBounds(180, 40,120, 20);

  lxh.setBounds(160, 80, 100, 20);

  lcno.setBounds(160, 110, 100, 20);

  lgrade.setBounds(160, 170, 60, 20);

  jtxh.setBounds(240, 80, 100, 20);

  jtcno.setBounds(240, 110, 100, 20);

  jtgrade.setBounds(240, 170, 100, 20);

  jbalter.setBounds(100, 260, 60, 20);

  jbdelete.setBounds(180, 260, 60, 20);

  jbadd.setBounds(260, 260, 60, 20);

  jbreset.setBounds(340,260,60,20);

  jbexit.setBounds(420,260,60,20);

  //

 为按扭添加事件监听器

  jbalter.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource()==jbalter)

  {

  String no

 = jtxh.getText();

 String jcno=jtcno.getText();

 String

 sgrade = jtgrade.getText();

  String sql = "select * from sc where sno ="" + no + "" and cno ="" +jcno +""";

  try{

  DBConnect

 con = new DBConnect();

  ResultSet rst =con.DBQuery(sql);

 if(rst.next())

  {

 sql = "update sc set grade = ""+ sgrade +"" where sno ="" + no + "" and cno ="" +jcno +""";

 孙玉祥:学生信息管理系统 22

 int n = con.DBUpdata(sql);//对数据库进行更新;

 if(n>0)

  JOptionPane.showMessageDialog(null,"修改成功!");

 else

  JOptionPane.showMessageDialog(null,"修改失败!");}

  else

  {

  JOptionPane.showMessageDialog(null,"此用户不存在!");

 }} catch (Exception e1) {

 e1.printStackTrace();

  }

 } } });

  jbdelete.addActionListener(new ActionListener(){

  public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource()==jbdelete)

  {

 String no

 = jtxh.getText();

 String jcno=jtcno.getText();

  String sql = "select * from sc where sno ="" + no + "" ";

 try{

  DBConnect

 con = new DBConnect();

  ResultSet rst =con.DBQuery(sql);

 if(rst.next())

  {

  sql = "delete from sc where sno ="" + no + "" and cno ="" +jcno +""";

  int n = con.DBUpdata(sql);//对数据库进行更新;

 if(n>0)

  JOptionPane.showMessageDialog(null,"删除成功!");

 else

  JOptionPane.showMessageDialog(null,"删除失败!");

 }

  else

 {

  JOptionPane.showMessageDialog(null,"此用户不存在!");

  }} catch (Exception e1) {

 e1.printStackTrace();

  }

 } } });

  jbadd.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource() == jbadd){

 String no

 = jtxh.getText();

 String jcno=jtcno.getText();

 String

 sgrade = jtgrade.getText();

 String sql = "select * from sc where sno ="" + no + "" and cno ="" +jcno +""";

 try{

  DBConnect

 con = new DBConnect();

 ResultSet rst =con.DBQuery(sql);

 if(!rst.next())

  {

 sql = "insert into sc(sno,cno,grade) values (""+ no +"", ""+jcno+"",""+sgrade+"" )";

 孙玉祥:学生信息管理系统 23

 int n = con.DBUpdata(sql);//对数据库进行更新;

 if(n>0)

  JOptionPane.showMessageDialog(null,"成绩添加成功!");

 else

  JOptionPane.showMessageDialog(null,"成绩添加失败!");

  }

 else

 {

  JOptionPane.showMessageDialog(null,"此用户已存在!");

 }

 } catch (Exception e1) {

 e1.printStackTrace();

  }

 } } });

  jbreset.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent e) {

  // TODO 自动生成方法存根

  if(e.getSource() == jbreset){

 jtxh.setText(null);

  jtgrade.setText(null);

  jtcno.setText(null);

 } } });

  jbexit.addActionListener(new ActionListener(){

 public void actionPerformed(ActionEvent arg0) {

  setVisible(false); } });

  addWindowListener(new WindowAdapter(){

 public void windowClosing(WindowEvent e){

  System.exit(0);

 } }); }

 public static void main(String[] args) {

  new AlterGrade();

 }}

 import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOption...

相关热词搜索: 课题 信息管理系统 实践