毕业设计-java程序综合设计数据库设计.doc
北华大学开放实验报告 实验项目名称: JAVA程序综合设计(数据库设计) 所属课程名称: 面对象程序设计JAVA 实 验 类 型: 设 计 型 班 级: 信 息112 一、 实验目的与要求1. 学会基于JDBC的数据库编程技术2. 了解服务器端和客户端的类3. 学会使用Sever类、GetConnection类、SocketIO和Client类等类的设计。4. 学会运用AWT和Swing组件美化系统用户界面。二、 实验环境 XP操作传统、Eclipse开发环境和JDK6.0三、 实验原理JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。AWT(Abstract Windowing Toolkit),中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。AWT由Java中的java.awt包提供,里面包含了许多可用来建立与平台无关的图形用户界面(GUI)的类,这些类又被称为组件(components)。Swing是由100%纯Java实现的,Swing组件是用Java实现的轻量级( light-weight)组件,没有本地代码,不依赖操作系统的支持,这是它与AWT组件的最大区别。四、实验内容1、图书管理系统登录程序代码为:import java.awt.Container;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.Icon;import javax.swing.ImageIcon;import javax.swing.JApplet;import javax.swing.JButton;import javax.swing.JLabel;import javax.swing.JTextField;SuppressWarnings("serial")public class t1 extends JApplet implements ActionListenerContainer cp=getContentPane();Icon ro=new ImageIcon(getClass().getResource("g1.gif");JLabel lb0=new JLabel("",ro,JLabel.CENTER);JLabel lb1=new JLabel();JTextField tf1=new JTextField(10);JLabel lb2=new JLabel("密码:",JLabel.CENTER);JTextField tf2=new JTextField(10);JButton bt1=new JButton("登入");JButton bt2=new JButton("重置");String IP=null;public void init()cp.setLayout(new FlowLayout();cp.add(lb0);cp.add(lb1);lb1.setText("用户名:");cp.add(tf1);cp.add(lb2);cp.add(tf2);cp.add(bt1);bt1.addActionListener(this);cp.add(bt2);bt2.addActionListener(this);public void actionPerformed(ActionEvent e) 运行结果:2、新书订购管理程序代码为:package jihu;import java.awt.EventQueue;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.border.EmptyBorder;import java.awt.Font;import javax.swing.JLabel;import javax.swing.GroupLayout;import javax.swing.GroupLayout.Alignment;import java.awt.Color;import java.awt.SystemColor;import javax.swing.LayoutStyle.ComponentPlacement;import javax.swing.JTextField;import javax.swing.JRadioButton;import javax.swing.JButton;import java.awt.event.ActionListener;import java.awt.event.ActionEvent;import javax.swing.border.TitledBorder;import javax.swing.UIManager;import javax.swing.JComboBox;public class t2 extends JFrame private static final long serialVersionUID = 4180756712362285535L;private JPanel contentPane;private JTextField textField;private JTextField textField_1;private JTextField textField_2;private JTextField textField_3;private JTextField textField_4;private JTextField textField_5;private JTextField textField_6;public static void main(String args) EventQueue.invokeLater(new Runnable() public void run() try t2 frame = new t2();frame.setVisible(true); catch (Exception e) e.printStackTrace(););public t2() setFont(new Font("华文楷体", Font.BOLD, 16);setTitle("u65B0u4E66u8BA2u8D2Du7BA1u7406");setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setBounds(100, 100, 627, 410);contentPane = new JPanel();contentPane.setForeground(Color.CYAN);contentPane.setBorder(new EmptyBorder(5, 5, 5, 5);setContentPane(contentPane);JPanel panel = new JPanel();panel.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "u56FEu4E66u4FE1u606F", TitledBorder.LEADING, TitledBorder.TOP, null, new Color(51, 153, 255);JPanel panel_1 = new JPanel();panel_1.setBorder(new TitledBorder(null, "u8BA2u8D2Du4FE1u606F", TitledBorder.LEADING, TitledBorder.TOP, null, SystemColor.textHighlight);JButton btnNewButton = new JButton("u6DFBu52A0");btnNewButton.setFont(new Font("宋体", Font.BOLD, 12);JButton btnNewButton_1 = new JButton("u9000u51FA");btnNewButton_1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) );btnNewButton_1.setFont(new Font("宋体", Font.BOLD, 12);GroupLayout gl_contentPane = new GroupLayout(contentPane);gl_contentPane.setHorizontalGroup(gl_contentPane.createParallelGroup(Alignment.LEADING).addComponent(panel, GroupLayout.DEFAULT_SIZE, 601, Short.MAX_VALUE).addComponent(panel_1, GroupLayout.DEFAULT_SIZE, 601, Short.MAX_VALUE).addGroup(gl_contentPane.createSequentialGroup().addGap(211).addComponent(btnNewButton).addGap(33).addComponent(btnNewButton_1).addContainerGap(239, Short.MAX_VALUE);gl_contentPane.setVerticalGroup(gl_contentPane.createParallelGroup(Alignment.LEADING).addGroup(gl_contentPane.createSequentialGroup().addComponent(panel, GroupLayout.PREFERRED_SIZE, 163, GroupLayout.PREFERRED_SIZE).addPreferredGap(ComponentPlacement.RELATED).addComponent(panel_1, GroupLayout.PREFERRED_SIZE, 153, GroupLayout.PREFERRED_SIZE).addPreferredGap(ComponentPlacement.UNRELATED).addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE).addComponent(btnNewButton_1).addComponent(btnNewButton).addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE);JLabel lblNewLabel_5 = new JLabel("u8BA2u8D2Du65E5u671FuFF1A");lblNewLabel_5.setFont(new Font("宋体", Font.BOLD, 12);JLabel lblNewLabel_6 = new JLabel("u64CDu4F5Cu5458uFF1A");lblNewLabel_6.setFont(new Font("宋体", Font.BOLD, 12);JLabel lblNewLabel_7 = new JLabel("u6298u6263uFF1A");lblNewLabel_7.setFont(new Font("宋体", Font.BOLD, 12);JLabel lblNewLabel_8 = new JLabel("u8BA2u8D2Du6570u91CFuFF1A");lblNewLabel_8.setFont(new Font("宋体", Font.BOLD, 12);JLabel lblNewLabel_9 = new JLabel("u662Fu5426u9A8Cu6536uFF1A");lblNewLabel_9.setFont(new Font("宋体", Font.BOLD, 12);textField = new JTextField();textField.setColumns(10);textField_1 = new JTextField();textField_1.setBackground(UIManager.getColor("Button.light");textField_1.setColumns(10);textField_2 = new JTextField();textField_2.setColumns(10);textField_3 = new JTextField();textField_3.setColumns(10);JRadioButton rdbtnNewRadioButton = new JRadioButton("u662F");rdbtnNewRadioButton.setFont(new Font("宋体", Font.BOLD, 12);rdbtnNewRadioButton.setSelected(true);JRadioButton rdbtnNewRadioButton_1 = new JRadioButton("u5426");rdbtnNewRadioButton_1.setFont(new Font("宋体", Font.BOLD, 12);GroupLayout gl_panel_1 = new GroupLayout(panel_1);gl_panel_1.setHorizontalGroup(gl_panel_1.createParallelGroup(Alignment.LEADING).addGroup(gl_panel_1.createSequentialGroup().addGroup(gl_panel_1.createParallelGroup(Alignment.LEADING).addComponent(lblNewLabel_5).addComponent(lblNewLabel_6).addComponent(lblNewLabel_7).addGap(101).addGroup(gl_panel_1.createParallelGroup(Alignment.LEADING, false).addComponent(textField_2).addComponent(textField, Alignment.TRAILING).addComponent(textField_1, Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, 131, Short.MAX_VALUE).addPreferredGap(ComponentPlacement.RELATED).addGroup(gl_panel_1.createParallelGroup(Alignment.LEADING).addComponent(lblNewLabel_9).addComponent(lblNewLabel_8).addGap(47).addGroup(gl_panel_1.createParallelGroup(Alignment.LEADING).addGroup(gl_panel_1.createSequentialGroup().addComponent(rdbtnNewRadioButton).addGap(18).addComponent(rdbtnNewRadioButton_1).addContainerGap().addComponent(textField_3, GroupLayout.DEFAULT_SIZE, 176, Short.MAX_VALUE);gl_panel_1.setVerticalGroup(gl_panel_1.createParallelGroup(Alignment.LEADING).addGroup(gl_panel_1.createSequentialGroup().addGap(21).addGroup(gl_panel_1.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel_5).addComponent(lblNewLabel_8).addComponent(textField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(textField_3, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addPreferredGap(ComponentPlacement.RELATED, 13, Short.MAX_VALUE).addGroup(gl_panel_1.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel_6).addComponent(lblNewLabel_9).addComponent(textField_1, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(rdbtnNewRadioButton).addComponent(rdbtnNewRadioButton_1).addGap(18).addGroup(gl_panel_1.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel_7).addComponent(textField_2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addContainerGap();panel_1.setLayout(gl_panel_1);JLabel lblNewLabel = new JLabel("u4E66u7C4Du7F16u53F7uFF1A");lblNewLabel.setFont(new Font("宋体", Font.BOLD, 12);JLabel lblNewLabel_1 = new JLabel("u56FEu4E66u7C7Bu522BuFF1A");lblNewLabel_1.setFont(new Font("宋体", Font.BOLD, 12);JLabel lblNewLabel_2 = new JLabel("u56FEu4E66u4EF7u683CuFF1A");lblNewLabel_2.setFont(new Font("宋体", Font.BOLD, 12);JLabel lblNewLabel_3 = new JLabel("u56FEu4E66u540Du79F0uFF1A");lblNewLabel_3.setFont(new Font("宋体", Font.BOLD, 12);JLabel lblNewLabel_4 = new JLabel("u51FAu7248u793EuFF1A");lblNewLabel_4.setFont(new Font("宋体", Font.BOLD, 12);textField_4 = new JTextField();textField_4.setColumns(10);textField_5 = new JTextField();textField_5.setColumns(10);textField_6 = new JTextField();textField_6.setColumns(10);JComboBox comboBox = new JComboBox();JComboBox comboBox_1 = new JComboBox();GroupLayout gl_panel = new GroupLayout(panel);gl_panel.setHorizontalGroup(gl_panel.createParallelGroup(Alignment.LEADING).addGroup(gl_panel.createSequentialGroup().addGroup(gl_panel.createParallelGroup(Alignment.LEADING).addComponent(lblNewLabel).addComponent(lblNewLabel_1).addComponent(lblNewLabel_2).addGap(102).addGroup(gl_panel.createParallelGroup(Alignment.TRAILING).addGroup(gl_panel.createSequentialGroup().addGroup(gl_panel.createParallelGroup(Alignment.TRAILING, false).addComponent(comboBox, 0, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addComponent(textField_4, GroupLayout.DEFAULT_SIZE, 125, Short.MAX_VALUE).addPreferredGap(ComponentPlacement.UNRELATED).addGroup(gl_panel.createParallelGroup(Alignment.LEADING).addComponent(lblNewLabel_3).addComponent(lblNewLabel_4).addPreferredGap(ComponentPlacement.RELATED, 69, Short.MAX_VALUE).addGroup(gl_panel.createParallelGroup(Alignment.LEADING, false).addComponent(comboBox_1, 0, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addComponent(textField_5, GroupLayout.DEFAULT_SIZE, 143, Short.MAX_VALUE).addContainerGap().addGroup(gl_panel.createSequentialGroup().addComponent(textField_6, GroupLayout.DEFAULT_SIZE, 125, Short.MAX_VALUE).addGap(297);gl_panel.setVerticalGroup(gl_panel.createParallelGroup(Alignment.LEADING).addGroup(gl_panel.createSequentialGroup().addContainerGap().addGroup(gl_panel.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel).addComponent(lblNewLabel_3).addComponent(textField_4, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addComponent(textField_5, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addGroup(gl_panel.createParallelGroup(Alignment.LEADING).addGroup(gl_panel.createSequentialGroup().addGap(30).addGroup(gl_panel.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel_1).addComponent(lblNewLabel_4).addComponent(comboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addGap(32).addGroup(gl_panel.createParallelGroup(Alignment.BASELINE).addComponent(lblNewLabel_2).addComponent(textField_6, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addGroup(gl_panel.createSequentialGroup().addGap(18).addComponent(comboBox_1, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE);panel.setLayout(gl_panel);contentPane.setLayout(gl_contentPane);运行结果为:3、图书验收程序代码为:import java.awt.EventQueue;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.border.EmptyBorder;import javax.swing.GroupLayout;import javax.swing.GroupLayout.Alignment;import javax.swing.JTable;import java.awt.Font;import javax.swing.LayoutStyle.ComponentPlacement;import javax.swing.JLabel;import javax.swing.JTextField;import javax.swing.JButton;import javax.swing.JRadioButton;import javax.swing.table.DefaultTableModel;import javax.swing.border.LineBorder;import java.awt.Color;public class t3 extends JFrame private static final long serialVersionUID = -7319664947163365781L;private JPanel contentPane;private JTable table;private JLabel lblNewLabel;private JLabel lblNewLabel_1;private JLabel lblNewLabel_2;private JLabel lblNewLabel_3;private JLabel lblNewLabel_4;private JLabel lblNewLabel_5;private JLabel lblNewLabel_6;private JLabel lblNewLabel_7;private JLabel lblNewLabel_8;private JTextField textField;private JTextField textField_1;private JTextField textField_2;private JTextField textField_3;private JTextField textField_4;private JTextField textField_5;private JTextField textField_6;private JTextField textField_7;private JButton btnNewButton;private JButton btnNewButton_1;private JRadioButton rdbtnNewRadioButton;private JRadioButton rdbtnNewRadioButton_1;public static void main(String args) EventQueue.invokeLater(new Runnable() public void run() try t3 frame = new t3();frame.setVisible(true); catch (Exception e) e.printStackTrace(););public t3() setFont(new Font("宋体", Font.BOLD, 18);setTitle("u56FEu4E66u9A8Cu6536");setAlwaysOnTop(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setBounds(100, 100, 632, 396);contentPane = new JPanel();contentPane.setBorder(new EmptyBorder(5, 5, 5, 5);setContentPane(contentPane);table = new JT