《java程序设计》实验指导书(完整)(10)

2019-09-01 17:52

XX学院java实验报告

{ {

} try{

fp.out.close(); //关闭socket输出流 fp.in.close(); //关闭socket输入流 fp.sock.close(); //关闭socket }catch(Exception ee){break; }

try{

msg = fp.in.readUTF(); if(msg!=null){ }

fp.t1.append(msg+\);

String msg=null; while(true) }

public void run()

fp.serverSock.close(); //关闭ServerSocket }catch(Exception ee){}

} }

三、实验要求:

1、事先预习,写出预习报告 2、上机验证后写出实验报告

实验十六 数据库设计

一、实验目的

1.理解JDBC的功能及体系结构;

2.掌握利用JDBC实现数据库的查询更新等操作的方法; 3.掌握基本的Java数据库程序设计。 二、实验内容

案例 成绩查询系统分析

设计一个小程序可以实现各种单科考试、竞赛等成绩的各种查询。将操作与图形用户界面相结合,则很容易实现绩查询系统。程序包括三个类,除了主程序及窗体程序外,数据库连接的功能单独由一个类来完成。程序主界面如图1所示。当输入考号后点击按考生查询按钮,则显示该生成绩如图2所示。

46

XX学院java实验报告

图1 成绩查询系统界面 图2 按照考号查询成

点击“成绩名次”按钮可以查看考试排名如图3所示。点击“未通过名单”按钮可以查看学生不及格的情况如图4所示。

图3 查询成绩名次 图4 查询未通过名单

在上面的案例框架中,我们需要利用JDBC连接数据库进行访问。 试尝试实现此功能,补全代码。 1.数据库连接类: import java.sql.*;

public class DbConnect //静态方法提高数据库的连接 { } }

2.窗体程序: import java.awt.*; import javax.swing.*; import java.sql.*;

import java.awt.event.*;

public class ScoreInquirementFrame extends JFrame implements ActionListener {

JPanel contentPane;

47

XX学院java实验报告

Connection con; Statement st;

JSplitPane jSplitPane1 = new JSplitPane();

BorderLayout borderLayout1 = new BorderLayout(); JPanel jPanel1 = new JPanel();

JScrollPane jScrollPane1 = new JScrollPane(); JTextArea jTextArea1 = new JTextArea(); JLabel jLabel1 = new JLabel(\考号\

JButton jButton1 = new JButton(\成绩名次\ JButton jButton2 = new JButton(\未通过名单\ JTextField jTextField1 = new JTextField();

JButton jButton3 = new JButton(\按考生查询\ //构造方法

public ScoreInquirementFrame() {

}/进行窗口的初始化

private void jbInit() throws Exception {

contentPane = (JPanel) getContentPane(); contentPane.setLayout(borderLayout1); setSize(new Dimension(400, 300)); setTitle(\成绩查询系统\ con=DbConnect.getConn(); st=con.createStatement();

jSplitPane1.setOrientation(JSplitPane.VERTICAL_SPLIT); jPanel1.setLayout(null);

jLabel1.setBounds(new Rectangle(24, 15, 49, 25)); jButton1.setBounds(new Rectangle(79, 58, 181, 29)); jButton1.addActionListener(this);

jButton2.setBounds(new Rectangle(80, 100, 178, 28)); jButton2.addActionListener(this);

jTextField1.setBounds(new Rectangle(79, 15, 180, 25)); jButton3.setBounds(new Rectangle(268, 15, 96, 24)); jButton3.addActionListener(this);

contentPane.add(jSplitPane1, java.awt.BorderLayout.CENTER); jSplitPane1.add(jPanel1, JSplitPane.TOP); jPanel1.add(jButton1); jPanel1.add(jButton2); jPanel1.add(jTextField1); jPanel1.add(jButton3); jPanel1.add(jLabel1);

jSplitPane1.add(jScrollPane1, JSplitPane.BOTTOM);

48

XX学院java实验报告

jScrollPane1.getViewport().add(jTextArea1); jSplitPane1.setDividerLocation(135); }

//按钮的事件处理方法

public void actionPerformed(ActionEvent e) {//“按考生查询”按钮的事件处理方法 }

//“未通过名单”按钮的事件处理方法 if(e.getSource()= =jButton2) {

49

XX学院java实验报告

}

//“成绩名次”按钮的事件处理方法 if(e.getSource()= =jButton1) { } } }

3.主程序: import java.awt.*; import javax.swing.*;

public class ScoreInquirement {

public ScoreInquirement() {

ScoreInquirementFrame frame = new ScoreInquirementFrame(); //令窗体对象居中显示

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = frame.getSize();

50


《java程序设计》实验指导书(完整)(10).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:100篇初中生阅读题(含答案)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: