2010春-《面向对象程序设计(java)》--模板与要求_第1页
2010春-《面向对象程序设计(java)》--模板与要求_第2页
2010春-《面向对象程序设计(java)》--模板与要求_第3页
2010春-《面向对象程序设计(java)》--模板与要求_第4页
2010春-《面向对象程序设计(java)》--模板与要求_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向对象的程序设计(Java) 课程设计报告 题目: 高考查分及分析系统设计 专 业 信息管理与信息系统 班 级 信管 071 姓 名 李 龙 学 号 3070561014 指导教师 李建勋 郭建华 完成日期 2010-07-10 2010 年 春季 学期 面 向 对 象 程 序 设 计 (Java) 课 程 设 计 成 绩 评 定 经考核,给出如下评语: 并综合评定该生课程设计成绩为 。 指导教师: 年 月 日 一、 系统需求分析 随着社会的发展,高考的整个过程也成了透明化,实行阳光工程,相应的成 绩查询也需要在网上可以查到,这样可以方便广大考生,也能让我们可以看到别人 的真实成绩,这样就能杜绝高考中的徇私舞弊,让高考更透明,更公平,考生也可 以方便分析自己的成绩,知道自己考试成绩能排在什么位置,以便能给志愿的填报 提供帮助。 二、 系统实现目标 识别考生的唯一码一般是考号,我们要通过学生的考号,先查询出存储的数据 库中的学生信息,包括个人信息和考试成绩,个人信息能让考生知道查询是否准确, 是不是自己的个人信息,然后根据查询出的考生成绩,进行基本的分析,由于是高 考分析系统,我们只能进行简单的分析,比如总分,平均分以及排名,全省最高分 之类的,不能再过多的进行分析,那样的话就不适合现在的志愿填报系统。 三、 相关技术 这次的系统是用 JAVA 语言实现的,用的事 NetBeans IDE 6.5.1,这个软件有 人性化的集成功能,可视化的操作界面,在设计用户界面的时候类似于画板,很方 便也很好实现。数据库用 access 创建,是微软基本的办公工具之一,很简单使用, 也方便日后的管理与维护,数据库的连接,使用了 JDBC(Java Database Connectivity) ,这是提供连接各种关系数据库的统一接口。 四、 系统设计 输入正确 输入错误 用户界面 输入准考证号 错误提示框 数据库考生信息显示考生信息 分析成绩显示分析结果 五、 系统实现(数据库的结构、系统中实现的相关函数的用途,变量的含义等等, 以及系统的有关流程的设计) 数据库结构: 名称 字段名称 主键 非空 序号 ID no yes 准高考号 num yes yes 姓名 name no yes 省份 shengfen no yes 学校 school no no 文理 wenli no yes 语文 yuwen no yes 数学 shuxue no yes 英语 yingyu no yes 综合 zonghe no yes 考生信息 姓名 省份 学校 文理 准考证号 语文成绩 数学成绩 英语成绩 综合成绩 六、 系统配置(描述系统的代码文件结构、如何配置、代码文件之间的关系、如 何访问、访问效果等) package gk; import java.sql.Statement; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import javax.swing.table.DefaultTableModel; import javax.swing.JOptionPane; /* * * author Administrator */ public class MyJFrame extends javax.swing.JFrame /* Creates new form MyJFrame */ public MyJFrame() initComponents(); /* This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ SuppressWarnings(“unchecked“) / private void initComponents() jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); numJTF = new javax.swing.JTextField(); queryJB = new javax.swing.JButton(); jScrollPane1 = new javax.swing.JScrollPane(); jTable2 = new javax.swing.JTable(); jLabel3 = new javax.swing.JLabel(); jScrollPane2 = new javax.swing.JScrollPane(); jTable1 = new javax.swing.JTable(); jLabel4 = new javax.swing.JLabel(); jSeparator1 = new javax.swing.JSeparator(); jTextField2 = new javax.swing.JTextField(); jTextField3 = new javax.swing.JTextField(); jTextField4 = new javax.swing.JTextField(); jSeparator2 = new javax.swing.JSeparator(); jButton1 = new javax.swing.JButton(); jLabel5 = new javax.swing.JLabel(); jLabel6 = new javax.swing.JLabel(); jLabel7 = new javax.swing.JLabel(); jLabel8 = new javax.swing.JLabel(); jTextField1 = new javax.swing.JTextField(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jLabel1.setFont(new java.awt.Font(“宋体“, 1, 24); jLabel1.setText(“高考查分分析系统“); jLabel2.setText(“输入准考证号:“); queryJB.setText(“确定“); queryJB.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent evt) queryJBActionPerformed(evt); ); jTable2.setModel(new javax.swing.table.DefaultTableModel( new Object null, null, null, null , new String “ 语文“, “ 数学“, “ 英语“, “ 综合“ ) boolean canEdit = new boolean false, false, false, false ; public boolean isCellEditable(int rowIndex, int columnIndex) return canEdit columnIndex; ); jScrollPane1.setViewportView(jTable2); jLabel3.setText(“考生信息:“); jTable1.setModel(new javax.swing.table.DefaultTableModel( new Object null, null, null, null , new String “ 姓名“, “ 省份“, “ 学校“, “ 文理“ ) boolean canEdit = new boolean false, false, false, false ; public boolean isCellEditable(int rowIndex, int columnIndex) return canEdit columnIndex; ); jScrollPane2.setViewportView(jTable1); jLabel4.setText(“考生成绩:“); jTextField2.setEditable(false); jTextField3.setEditable(false); jTextField4.setEditable(false); jButton1.setText(“基本分析“); jButton1.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent evt) jButton1ActionPerformed(evt); ); jLabel5.setText(“总成绩:“); jLabel6.setText(“三科平均分:“); jLabel7.setText(“全省排名:“); jLabel8.setText(“省最高分:“); jTextField1.setEditable(false); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane(); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(162, 162, 162) .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 216, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel2) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(numJTF, javax.swing.GroupLayout.PREFERRED_SIZE, 184, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addComponent(queryJB) .addComponent(jLabel3) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jLabel4) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(64, Short.MAX_VALUE) .addComponent(jSeparator1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 526, Short.MAX_VALUE) .addComponent(jSeparator2, javax.swing.GroupLayout.DEFAULT_SIZE, 526, Short.MAX_VALUE) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jButton1) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel7) .addComponent(jLabel5) .addGap(18, 18, 18) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) .addComponent(jTextField3, javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jTextField2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 55, Short.MAX_VALUE) .addGap(95, 95, 95) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addGroup(layout.createSequentialGroup() .addComponent(jLabel6) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createSequentialGroup() .addComponent(jLabel8) .addGap(18, 18, 18) .addComponent(jTextField1, 0, 0, Short.MAX_VALUE) .addContainerGap(111, Short.MAX_VALUE) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 44, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(numJTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(queryJB) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jLabel3) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jLabel4) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jButton1) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel5) .addComponent(jLabel6) .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel7) .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel8) .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(47, 47, 47) ); pack(); / private void queryJBActionPerformed(java.awt.event.ActionEvent evt) String url=“jdbc:odbc:driver=Microsoft Access Driver (*.mdb);DBQ=a.mdb“; Connection conn = null; try Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver“); conn = DriverManager.getConnection(url , “ , “); /字段和表名应为 英文 Statement statement=conn.createStatement(); ResultSet as=statement.executeQuery(“select * from a where num=“+this.numJTF.getText()+“); if(this.numJTF.getText().equals(“)|!as.next() JOptionPane.showMessageDialog(null, “请输入正确的准考证号“); else ResultSet rs=statement.executeQuery(“select * from a where num=“+this.numJTF.getText()+“); DefaultTableModel dtm=(DefaultTableModel)this.jTable1.getModel(); for(int j=dtm.getRowCount()-1;j=0;j-) dtm.removeRow(j); while(rs.next() String data=new String4; data0=rs.getString(“name“); data1=rs.getString(“shengfen“); data2=rs.getString(“school“); data3=rs.getString(“wenli“); dtm.addRow(data); ResultSet bs=statement.executeQuery(“select * from a where num=“+this.numJTF.getText()+“); DefaultTableModel dtm2=(DefaultTableModel)this.jTable2.getModel(); for(int j=dtm2.getRowCount()-1;j=0;j-) dtm2.removeRow(j); while(bs.next() String data=new String4; data0=bs.getString(“yuwen“); data1=bs.getString(“shuxue“); data2=bs.getString(“yingyu“); data3=bs.getString(“zonghe“); dtm2.addRow(data); conn.close(); catch(Exception e) e.printStackTrace(); / TODO add your handling code here: private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) String url=“jdbc:odbc:driver=Microsoft Access Driver (*.mdb);DBQ=a.mdb“; Connection conn = null; try Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver“); conn = DriverManager.getConnection(url , “ , “); /字段和表名应为 英文 Statement statement=conn.createStatement(); ResultSet rs=statement.executeQuery(“select * from a where num=“+this.numJTF.getText()+“); if(this.numJTF.getText().equals(“)|!rs.next() JOptionPane.showMessageDialog(null, “请先进行成绩查询“); Float sum=0.00f,sum1=0.00f; String pm=rs.getString(“shengfen“); String pm1=rs.getString(“wenli“); sum+=Float.valueOf(rs.getString(“yuwen“); sum+=Float.valueOf(rs.getString(“shuxue“); sum+=Float.valueOf(rs.getString(“yingyu“); sum1=sum/3; sum+=Float.valueOf(rs.getString(“zonghe“); this.jTextField2.setText(String.valueOf(sum); this.jTextField4.setText(String.valueOf(sum1); ResultSet as=statement.executeQuery(“select * from a where shengfen=“+pm+“ and wenli=“+pm1+“); int pm2=1;Float max=sum; while(as.next() Float j=(Float.valueOf(as.getString(“yuwen“)+Float.valueOf(as.getString(“shuxue“)+Float.va lueOf(as.getString(“yingyu“)+Float.valueOf(as.getString(“zonghe“); if(maxj) max=j; if(sumj); pm2+; this.jTextField3.setText(String.valueOf(pm2); this.jTextField1.setText(String.valueOf(max); conn.close(); catch(Exception e) e.printStackTrace(); / TODO add your handling code here: /* * param args the command line arguments */ public static void main(String args) java.awt.EventQueue.invokeLater(new Runnable() public void run() new MyJFrame().setVisible(true); ); / Variables declaration - do not modify public javax.swing.JButton jButton1; public javax.swing.JLabel jLabel1; public javax.swing.JLabel jLabel2; public javax.swing.JLabel jLabel3; public javax.swing.JLabel jLabel4; public javax.swing.JLabel jLabel5; public javax.swing.JLabel jLabel6; public javax.swing.JLabel jLabel7; public javax.swing.JLabel jLabel8; public javax.swing.JScrollPane jScrollPane1; public javax.swing.JScrollPane jScrollPane2; public javax.swing.JSeparator jSeparator1; public javax.swing.JSeparator jSeparator2; public javax.swing.JTable jTable1; public javax.swing.JTable jTable2; public javax.swing.JTextField jTextField1; public javax.swing.JTextField jTextField2; public javax.swing.JTextField jTextField3; public javax.swing.JTextField jTextField4; public javax.swing.JTextField numJTF; private j

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论