图书管理系统实验报告+源代码

时间:2024.4.20

图书信息管理系统

课程设计:图书信息管理系统

设计人员:林俊柱

开发环境:   eclipse

数据库:       sql server 2005

说明:        数据库里面的用户名为”sa”, 密码为:”1111”

          登录程序所用的用户名为: ljz ,密码为: 0000,

当然,也可以使用注册功能,注册完成后使用自己的用户名和密码登录

          

设计思路:该图书信息管理系统主要便于图书管理员管理教师的书籍借阅情况。

该程序实现的功能总共有五个板块:

1、教师信息管理: 包含了增加、删除、修改、查询教师信息等功能;

2、图书信息管理: 包含了增加、删除、修改、查询图书信息等功能;

3、借书登记:    登记教师借阅图书的相关信息;

4、还书登记:    登记教师归还图书的相关信息;

5、催还:       查询出并列出教师借阅图书超过期限的相关信息,以便催促教师还书.

数据库的设计思路为:

Teacher(读者号,姓名,性别,年龄,部门,联系方式)

Book(ISBN,书名,作者,出版社,价格,类型)

Borrow(读者号,ISBN,借阅日期,归还日期,办理人,归还办理人)

                                   (横线为主键,蓝色字体为外键)

管理员信息表

Administrator(管理员编号,管理员密码,管理员姓名,性别,年龄,联系电话)

数据库的连接:

publicclass Dataclass {

    privatestatic Connection conn = null;

    String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

    String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Java课程设计数据库 ";

    String userName="sa";    //默认用户名

    String userPwd="1111";        //密码

   

    //构造函数

    public Dataclass(){      //用于连接数库

       try {

       if (conn == null) {

           Class.forName(driverName);

           conn = DriverManager.getConnection(dbURL, userName, userPwd);

       }

       else

           return;

       }

       catch (Exception e) {  //捕获数据库连接不成功异常

              e.printStackTrace();

        }

    }

   

    publicstatic ResultSet executeQuery(String sql) {    //传送返回结果集的SQL语句

       try {

           if(conn==null)

           new Dataclass();     //调用构造函数连接数据库

           returnconn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE).executeQuery(sql); //返回可滚动的并发事件

       }

       catch (SQLException e) {     //捕获访问数据库失败异常

           e.printStackTrace();

           returnnull;

       }

    }

   

    publicstaticboolean executeUpdate(String sql) { //发送不返回结果集的SQL语句

       try {

           if(conn==null)

              new Dataclass();  //调用构造函数连接数据库

           int i = conn.createStatement().executeUpdate(sql);

           if(i != 0)

              returntrue;

       }

       catch (SQLException e) {      //捕获访问数据库失败异常

           System.out.println(e.getMessage());

           returnfalse;                //不成功返回-1

       }

       returnfalse;

    }

   

    publicstaticvoid close() {   //断开数据库连接方法

       try {

           conn.close();

       }

       catch (SQLException e) {

           e.printStackTrace();

       }

       finally{

           conn = null;        //设置数据库连接对象为空

       }

    }

}

登录界面的实现:

代码为

publicclass KCSJDL extends JFrame{

    JTextField textField1;

    JPasswordField textField2;

    public KCSJDL(){

    try{// 设置Windows观感

           UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

           }catch(Exception e){

           System.out.println("Look and Feel Exception");

           System.exit(0);

       }

       setTitle("图书管理系统登录界面");

        setBounds(400, 200,  376, 300);

       setResizable(false); 

       Container con=getContentPane();

      

       JLabel lblNewLabel = new JLabel();

       lblNewLabel.setIcon(new ImageIcon("images/head.jpg"));

      

       JPanel Jpanel1 = new JPanel();

       Jpanel1.setLayout(new GridLayout(2, 1, 0, 0));

       JPanel Jpanel1_1 = new JPanel();

       Jpanel1_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 30));

       Jpanel1.add(Jpanel1_1);

       JLabel lblNewLabel2 = new JLabel(" 管理员编号:");

       Jpanel1_1.add(lblNewLabel2);

       textField1 = new JTextField();

       Jpanel1_1.add(textField1);

       textField1.setColumns(25);

      

       JPanel Jpanel1_2 = new JPanel();

       Jpanel1_2.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jpanel1.add(Jpanel1_2);

       JLabel label_1 = new JLabel(" 管理员密码:");

       Jpanel1_2.add(label_1);

       textField2 = new JPasswordField();

       Jpanel1_2.add(textField2);

       textField2.setColumns(25);

      

       JPanel Jpanel2 = new JPanel();

       JLabel label = new JLabel("                         ");

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

       JButton button2 = new JButton("  注册  ");

       Jpanel2.add(label);

       Jpanel2.add(button1);

       Jpanel2.add(button2);

      

       con.add(lblNewLabel,"North");

       con.add(Jpanel1,"Center");

       con.add(Jpanel2,"South");

      

       textField1.addActionListener(new KCSJDLEvent(this));

       textField2.addActionListener(new KCSJDLEvent(this));

       button1.addActionListener(new KCSJDLEvent(this));

       button2.addActionListener(new KCSJDLEvent(this));

    }

    publicstaticvoid main(String []args){

    KCSJDL test = new KCSJDL();

    test.setVisible(true);

    test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }

}

注册界面的实现:

代码为:

publicclass KCSJZC extends JFrame{

   

    private ButtonGroup buttonGroup = new ButtonGroup();

    JTextField textField1_1;

    JTextField textField2_1;

    JTextField textField3_1;

    JTextField textField4_1;

    JTextField textField4_2;

    JRadioButton radioButton1;

    JRadioButton radioButton2;

   

    public KCSJZC(){

       try{// 设置Windows观感

           UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

           }catch(Exception e){

           System.out.println("Look and Feel Exception");

           System.exit(0);

       }

       setTitle("注册");

        setBounds(400, 200,500,550);

       setResizable(false); 

       Container con=getContentPane();

      

       JLabel lblNewLabel = new JLabel();

       lblNewLabel.setIcon(new ImageIcon("images/ZC.png"));

       con.add(lblNewLabel,"North");

       

       JPanel Jpanel = new JPanel();

       Jpanel.setBorder(new TitledBorder(null, "管理员注册", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       Jpanel.setLayout(new GridLayout(5, 1, 0, 0));

       con.add(Jpanel,"Center");

      

       JPanel J1 = new JPanel();

       J1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jpanel.add(J1);

       JLabel lb1_1 = new JLabel("管理员编号:");

       textField1_1 = new JTextField();

       textField1_1.setColumns(20);

       JLabel lb1_2 = new JLabel("                                 ");

       J1.add(lb1_1);

       J1.add(textField1_1);

       J1.add(lb1_2);

      

       JPanel J2 = new JPanel();

       J2.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jpanel.add(J2);

       JLabel lb2_1 = new JLabel("管理员密码:");

       textField2_1 = new JTextField();

       textField2_1.setColumns(20);

       JLabel lb2_2 = new JLabel(" 确认密码:");

       JTextField textField2_2 = new JTextField();

       textField2_2.setColumns(20);

       J2.add(lb2_1);

       J2.add(textField2_1);

       J2.add(lb2_2);

       J2.add(textField2_2);

      

       JPanel J3 = new JPanel();

       J3.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jpanel.add(J3);

       JLabel lb3_1 = new JLabel("管理员姓名:");

       textField3_1 = new JTextField();

       textField3_1.setColumns(20);

       JLabel lb3_2 = new JLabel(" 性    别:");

       radioButton1 = new JRadioButton(" 男");//"    "

       buttonGroup.add(radioButton1);

       JLabel lb3_3 = new JLabel("     ");

       radioButton2 = new JRadioButton(" 女");

       buttonGroup.add(radioButton2);

       J3.add(lb3_1);

       J3.add(textField3_1);

       J3.add(lb3_2);

       J3.add(radioButton1);

       J3.add(lb3_3);

       J3.add(radioButton2);

      

       JPanel J4 = new JPanel();

       J4.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jpanel.add(J4);

       JLabel lb4_1 = new JLabel("年    龄  :");

       textField4_1 = new JTextField();

       textField4_1.setColumns(20);

       JLabel lb4_2 = new JLabel(" 联系电话:");

       textField4_2 = new JTextField();

       textField4_2.setColumns(20);

       J4.add(lb4_1);

       J4.add(textField4_1);

       J4.add(lb4_2);

       J4.add(textField4_2);

      

       JPanel J5 = new JPanel();

       J5.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jpanel.add(J5);

       JButton Jb1 = new JButton(" 注册 ");

       Jb1.setIcon(new ImageIcon("images/JY.png"));

       Jb1.addActionListener(new enrollEvent(this));

       JButton Jb2 = new JButton("返回登录界面");

       Jb2.setIcon(new ImageIcon("images/GH.png"));

       Jb2.addActionListener(new enrollEvent(this));

       J5.add(Jb1);

       J5.add(Jb2);

      

    }

}

首页界面的实现:

代码为:

class KCSJMain extends JFrame {

   

    JButton Jbutton[] = new JButton[6];

    JPanel Jpanel;

    JPanel Jpanel1;

    JPanel Jpanel2;

    JPanel Jpanel3;

    JPanel Jpanel4;

    JPanel Jpanel5;

    JTextField textField_1;

    JTextField textField_2;

    JTextField textField_3;

    JTextField textField_4;

    JTextField textField_5;

    public KCSJMain(){

    try{// 设置Windows观感

           UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

           }catch(Exception e){

           System.out.println("Look and Feel Exception");

           System.exit(0);

       }

    setTitle("图书管理系统");

    setBounds(150, 150, 950, 620);

    setResizable(false);

    Container con=getContentPane();

   

    String str[] = {"    首页    ","教师信息管理","图书信息管理","   借书登记   ","   还书登记   ","    催还    "};

       String Pfilename[] = {"images/c6.png","images/p1.png","images/p2.png","images/p3.png","images/p4.png","images/p5.png"};

       for(int i = 0;i < str.length;i++){

           Jbutton[i] = new JButton(str[i]);

           Jbutton[i].setIcon(new ImageIcon(Pfilename[i]));

           Jbutton[i].setHorizontalTextPosition(JButton.CENTER);

           Jbutton[i].setVerticalTextPosition(JButton.BOTTOM);       

       }

       JPanel panel = new JPanel();

       panel.setBorder(new LineBorder(Color.LIGHT_GRAY));

       for(int i = 0;i < str.length;i++){

           panel.add(Jbutton[i]);

       }

      

       //左边

       JPanel jpanel = new  JPanel();

       jpanel.setBorder(new LineBorder(Color.LIGHT_GRAY));

       jpanel.setLayout(new BoxLayout(jpanel, BoxLayout.Y_AXIS));

      

       JPanel panel_1 = new JPanel();

       panel_1.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "欢迎使用图书管理系统", TitledBorder.CENTER, TitledBorder.TOP, null, new Color(0, 0, 0)));

       jpanel.add(panel_1);

       JTextArea textArea = new JTextArea();

       textArea.setColumns(30);

       textArea.setRows(5);

       textArea.setText("【功能简要介绍】:\n    该系统可以对教师读者以及图 \n 书进行管理,包括增删改查等功能\n ,方便于管理,是管理员的小小\n 助手!");

       textArea.setBackground(SystemColor.control);

       textArea.setEditable(false);

       panel_1.add(textArea);

      

       JPanel panel_2 = new JPanel();

       panel_2.setBorder(new TitledBorder(null, "您好,欢迎登录图书管理系统", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       jpanel.add(panel_2);

       JPanel jp = new JPanel();

       jp.setLayout(new GridLayout(5, 1, 0, 0));

       panel_2.add(jp);

      

       String str1[] = {"管理员编号:","管理员姓名:","   性别:   ","   年龄:   "," 联系电话: "};

       JPanel JP[] = new JPanel[str1.length];

       JLabel label[] = new JLabel[str1.length];

       for(int i = 0;i < str1.length;i++){

           JP[i] = new JPanel();

           label[i]= new JLabel(str1[i]);

           JP[i].add(label[i]);

           jp.add(JP[i]);

       }

       textField_1 = new JTextField();

       textField_1.setColumns(20);

       JP[0].add(textField_1);

      

       textField_2 = new JTextField();

       textField_2.setColumns(20);

       JP[1].add(textField_2);

      

       textField_3 = new JTextField();

       textField_3.setColumns(20);

       JP[2].add(textField_3);

      

       textField_4 = new JTextField();

       textField_4.setColumns(20);

       JP[3].add(textField_4);

      

       textField_5 = new JTextField();

       textField_5.setColumns(20);

       JP[4].add(textField_5);

      

       //面板

       Jpanel = new JPanel();

       Jpanel.setBorder(new LineBorder(Color.LIGHT_GRAY));

       JLabel lblNewLabel = new JLabel("");

       lblNewLabel.setIcon(new ImageIcon("images/picture.png"));

       Jpanel.add(lblNewLabel);

      

       Jpanel1 = new JPanelclass1();

       Jpanel2 = new JPanelclass2();

       Jpanel3 = new JPanelclass3();

       Jpanel4 = new JPanelclass4();

       Jpanel5 = new JPanelclass5();

      

       con.add(panel,"North");

       con.add(jpanel,"West");

       con.add(Jpanel,"Center");

      

       //注册事件侦听器

       Jbutton[0].addActionListener(new ButtonEvent(this,Jpanel));

       Jbutton[1].addActionListener(new ButtonEvent(this,Jpanel1));

       Jbutton[2].addActionListener(new ButtonEvent(this,Jpanel2));

       Jbutton[3].addActionListener(new ButtonEvent(this,Jpanel3));

       Jbutton[4].addActionListener(new ButtonEvent(this,Jpanel4));

       Jbutton[5].addActionListener(new ButtonEvent(this,Jpanel5));

      

       //确认退出系统

       this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE) ;

        this.addWindowListener(new WindowAdapter() {

           publicvoid windowClosing(WindowEvent e) {

              int confirm=JOptionPane.showConfirmDialog(null,"是否要退出图书馆管理系统?","确认框",JOptionPane.YES_NO_OPTION);

              if (confirm==JOptionPane.YES_OPTION)

                  System.exit(0);

           }

    });

 }

}

//当点击功能板块的图标时,图标会发生变化

class ButtonEvent implements ActionListener {

    private KCSJMain frame;

    private JPanel jpanel;

    public ButtonEvent(KCSJMain frame,JPanel jpanel){

       this.frame = frame;

       this.jpanel = jpanel;

    }

    publicvoid actionPerformed(ActionEvent e){

       String btnLabel = e.getActionCommand();

       if(btnLabel.equals("教师信息管理")){

           frame.Jbutton[0].setIcon(new ImageIcon("images/p6.png"));

           frame.Jbutton[1].setIcon(new ImageIcon("images/c1.png"));

           frame.Jbutton[2].setIcon(new ImageIcon("images/p2.png"));

           frame.Jbutton[3].setIcon(new ImageIcon("images/p3.png"));

           frame.Jbutton[4].setIcon(new ImageIcon("images/p4.png"));

           frame.Jbutton[5].setIcon(new ImageIcon("images/p5.png"));

       }

       elseif(btnLabel.equals("图书信息管理")){

           frame.Jbutton[0].setIcon(new ImageIcon("images/p6.png"));

           frame.Jbutton[1].setIcon(new ImageIcon("images/p1.png"));

           frame.Jbutton[2].setIcon(new ImageIcon("images/c2.png"));

           frame.Jbutton[3].setIcon(new ImageIcon("images/p3.png"));

           frame.Jbutton[4].setIcon(new ImageIcon("images/p4.png"));

           frame.Jbutton[5].setIcon(new ImageIcon("images/p5.png"));

       }

        elseif(btnLabel.equals("   借书登记   ")){

        frame.Jbutton[0].setIcon(new ImageIcon("images/p6.png"));

           frame.Jbutton[1].setIcon(new ImageIcon("images/p1.png"));

           frame.Jbutton[2].setIcon(new ImageIcon("images/p2.png"));

           frame.Jbutton[3].setIcon(new ImageIcon("images/c3.png"));

           frame.Jbutton[4].setIcon(new ImageIcon("images/p4.png"));

           frame.Jbutton[5].setIcon(new ImageIcon("images/p5.png"));

       }

        elseif(btnLabel.equals("   还书登记   ")){

        frame.Jbutton[0].setIcon(new ImageIcon("images/p6.png"));

           frame.Jbutton[1].setIcon(new ImageIcon("images/p1.png"));

           frame.Jbutton[2].setIcon(new ImageIcon("images/p2.png"));

           frame.Jbutton[3].setIcon(new ImageIcon("images/p3.png"));

           frame.Jbutton[4].setIcon(new ImageIcon("images/c4.png"));

           frame.Jbutton[5].setIcon(new ImageIcon("images/p5.png"));

       }

        elseif(btnLabel.equals("    催还    ")){

        frame.Jbutton[0].setIcon(new ImageIcon("images/p6.png"));

           frame.Jbutton[1].setIcon(new ImageIcon("images/p1.png"));

           frame.Jbutton[2].setIcon(new ImageIcon("images/p2.png"));

           frame.Jbutton[3].setIcon(new ImageIcon("images/p3.png"));

           frame.Jbutton[4].setIcon(new ImageIcon("images/p4.png"));

           frame.Jbutton[5].setIcon(new ImageIcon("images/c5.png"));

       }

        else{

        frame.Jbutton[0].setIcon(new ImageIcon("images/c6.png"));

           frame.Jbutton[1].setIcon(new ImageIcon("images/p1.png"));

           frame.Jbutton[2].setIcon(new ImageIcon("images/p2.png"));

           frame.Jbutton[3].setIcon(new ImageIcon("images/p3.png"));

           frame.Jbutton[4].setIcon(new ImageIcon("images/p4.png"));

           frame.Jbutton[5].setIcon(new ImageIcon("images/p5.png"));

        }

       frame.Jpanel.setVisible(false);

       frame.Jpanel1.setVisible(false);

       frame.Jpanel2.setVisible(false);

       frame.Jpanel3.setVisible(false);

       frame.Jpanel4.setVisible(false);

       frame.Jpanel5.setVisible(false);

       frame.add(jpanel,"Center");

       jpanel.setVisible(true);

    }

}

教师信息管理的实现(面板中还有四个功能)

代码为:

class JPanelclass1 extends JPanel {

   

    //选项卡1

    private ButtonGroup buttonGroup1 = new ButtonGroup();

    JTextField ZJtextField11;

    JTextField ZJtextField12;

    JRadioButton radioButton11;

    JRadioButton radioButton12;

    JTextField ZJtextField22;

    JTextField ZJtextField31;

    JTextField ZJtextField32;

   

    //选项卡2

    JTextField SCtextField2_11;

    JPanel SCJp2_2;

   

    //选项卡3

    private ButtonGroup buttonGroup2 = new ButtonGroup();

    JTextField XGtextField3_11;

    JTextField XGtextField3_21;

    JRadioButton radioButton21;

    JRadioButton radioButton22;

    JTextField XGtextField3_221;

    JTextField XGtextField3_222;

    JTextField XGtextField3_231;

   

    //选项卡4

    JTextField CXtextField4_1;

    JPanel CXJp4_2;

   

    public JPanelclass1(){

       setLayout(new BorderLayout(0, 0));

       setBorder(new LineBorder(Color.LIGHT_GRAY));

      

       //选择面板

       JTabbedPane JT1 = new JTabbedPane(JTabbedPane.TOP);

       add(JT1);

      

       //选项卡1

       JPanel panel_1 = new JPanel();

       panel_1.setLayout(new GridLayout(0, 1, 0, 0));

       JT1.addTab("增加教师信息", null, panel_1, null);

      

       JPanel J1 = new JPanel();

       J1.setBorder(new TitledBorder(null, "增加教师信息", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       J1.setLayout(new GridLayout(4, 1, 0, 0));

       panel_1.add(J1);

      

       JPanel Jp_1 = new JPanel();

       Jp_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       J1.add(Jp_1);

       JLabel Jl11 = new JLabel("读者号  :");

       ZJtextField11 = new JTextField();

       ZJtextField11.setColumns(20);

       JLabel Jl12 = new JLabel("*必填");

       JLabel Jl13 = new JLabel("   姓    名:");

       ZJtextField12 = new JTextField();

       ZJtextField12.setColumns(20);

       JLabel Jl14 = new JLabel("*必填");

       Jp_1.add(Jl11);

       Jp_1.add(ZJtextField11);

       Jp_1.add(Jl12);

       Jp_1.add(Jl13);

       Jp_1.add(ZJtextField12);

       Jp_1.add(Jl14);

      

       JPanel Jp_2 = new JPanel();

       J1.add(Jp_2);

       JLabel Jl21 = new JLabel("性    别: ");

       radioButton11 = new JRadioButton(" 男");//"    "

       buttonGroup1.add(radioButton11);

       JLabel Jl23 = new JLabel("       ");

       radioButton12 = new JRadioButton(" 女");

       buttonGroup1.add(radioButton12);

       JLabel Jl22 = new JLabel("       年    龄:");

       ZJtextField22 = new JTextField();

       ZJtextField22.setColumns(20);

       JLabel Jl24 = new JLabel("     ");

       Jp_2.add(Jl21);

       Jp_2.add(radioButton11);

       Jp_2.add(radioButton12);

       Jp_2.add(Jl23);

       Jp_2.add(Jl22);

       Jp_2.add(ZJtextField22);

       Jp_2.add(Jl24);

      

       JPanel Jp_3 = new JPanel();

       J1.add(Jp_3);

       JLabel Jl31 = new JLabel("部    门:");

       ZJtextField31 = new JTextField();

       ZJtextField31.setColumns(20);

       JLabel Jl32 = new JLabel("         联系方式:");

       ZJtextField32 = new JTextField();

       ZJtextField32.setColumns(20);

       JLabel Jl33 = new JLabel("*必填");

       Jp_3.add(Jl31);

       Jp_3.add(ZJtextField31);

       Jp_3.add(Jl32);

       Jp_3.add(ZJtextField32);

       Jp_3.add(Jl33);

      

       JPanel Jp_4 = new JPanel();

       J1.add(Jp_4);

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

       Jb1.setIcon(new ImageIcon("images/ZJ.png"));

       Jp_4.add(Jb1);

      

       //注册侦听器

       Jb1.addActionListener(new JPanelclass1_1Event(this));

      

       //选项卡2

       JPanel panel_2 = new JPanel();

       panel_2.setLayout(new GridLayout(0, 1, 0, 0));

       JT1.addTab("删除教师信息", null, panel_2, null);

      

       JPanel J2 = new JPanel();

       J2.setBorder(new TitledBorder(null, "删除教师信息", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       J2.setLayout(new GridLayout(3, 1, 0, 0));

       panel_2.add(J2);

      

       JPanel Jp2_1 = new JPanel();

       Jp2_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 25));

       J2.add(Jp2_1);

       JLabel Jl2_11 = new JLabel("请输入读者号:");

       SCtextField2_11 = new JTextField();

       SCtextField2_11.setColumns(20);

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

       Jb2_1.setIcon(new ImageIcon("images/b.png"));

       Jp2_1.add(Jl2_11);

       Jp2_1.add(SCtextField2_11);

       Jp2_1.add(Jb2_1);

      

       SCJp2_2 = new JPanel();

       SCJp2_2.setLayout(new BorderLayout());

       SCJp2_2.setBorder(new TitledBorder(null, "该教师的信息", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       J2.add(SCJp2_2);

      

       JPanel Jp2_3 = new JPanel();

       Jp2_3.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 25));

       J2.add(Jp2_3);

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

       Jb2_2.setIcon(new ImageIcon("images/SC.png"));

       Jp2_3.add(Jb2_2);

      

       //注册侦听器

       Jb2_1.addActionListener(new JPanelclass1_2Event(this));

       Jb2_2.addActionListener(new JPanelclass1_2Event(this));

      

       //选项卡3

       JPanel panel_3 = new JPanel();

       panel_3.setLayout(new GridLayout(0, 1, 0, 0));

       JT1.addTab("修改教师信息", null, panel_3, null);

      

       JPanel J3 = new JPanel();

       J3.setBorder(new TitledBorder(null, "修改教师信息", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       J3.setLayout(new GridLayout(2, 1, 0, 0));

       panel_3.add(J3);

      

       JPanel Jp3_1 = new JPanel();

       Jp3_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       J3.add(Jp3_1);

       JLabel Jl3_11 = new JLabel("请输入读者号:");

       XGtextField3_11 = new JTextField();

       XGtextField3_11.setColumns(20);

       JButton Jb3_1 = new JButton(" 查询该教师 ");

       Jb3_1.setIcon(new ImageIcon("images/b.png"));

       Jp3_1.add(Jl3_11);

       Jp3_1.add(XGtextField3_11);

       Jp3_1.add(Jb3_1);

      

       JPanel Jp3_2 = new JPanel();

       Jp3_2.setBorder(new TitledBorder(null, "修改教师信息", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       Jp3_2.setLayout(new GridLayout(4, 1, 0, 0));

       J3.add(Jp3_2);

                 

       JPanel Jp3_21 = new JPanel();

       Jp3_2.add(Jp3_21);

       JLabel Jl3_21 = new JLabel("教师姓名:");

        XGtextField3_21 = new JTextField();

       XGtextField3_21.setColumns(20);

       JLabel Jl3_22 = new JLabel("  教师性别:");

       radioButton21 = new JRadioButton("男");//"    "

       buttonGroup2.add(radioButton21);

       JLabel Jl3_23 = new JLabel("    ");

       radioButton22 = new JRadioButton("女");

       buttonGroup2.add(radioButton22);

       JLabel Jl3_24 = new JLabel("   ");

       Jp3_21.add(Jl3_21 );

       Jp3_21.add(XGtextField3_21);

       Jp3_21.add(Jl3_22);

       Jp3_21.add(radioButton21);

       Jp3_21.add(radioButton22);

       Jp3_21.add(Jl3_23);

       Jp3_21.add(Jl3_24);

      

       JPanel Jp3_22 = new JPanel();

       Jp3_2.add(Jp3_22);

       JLabel Jl3_221 = new JLabel("年    龄:");

       XGtextField3_221 = new JTextField();

       XGtextField3_221.setColumns(20);

       JLabel Jl3_222 = new JLabel("  部    门:");

       XGtextField3_222 = new JTextField();

       XGtextField3_222.setColumns(20);

       Jp3_22.add(Jl3_221);

       Jp3_22.add(XGtextField3_221);

       Jp3_22.add(Jl3_222);

       Jp3_22.add(XGtextField3_222);

      

       JPanel Jp3_23 = new JPanel();

       Jp3_2.add(Jp3_23);

       JLabel Jl3_231 = new JLabel("联系方式:");

       XGtextField3_231 = new JTextField();

       XGtextField3_231.setColumns(20);

       JLabel Jl3_232 = new JLabel("                                  ");

       Jp3_23.add(Jl3_231);

       Jp3_23.add(XGtextField3_231);

       Jp3_23.add(Jl3_232);

      

       JPanel Jp3_24 = new JPanel();

       Jp3_2.add(Jp3_24);

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

       Jb3_24.setIcon(new ImageIcon("images/XG.png"));

       Jp3_24.add(Jb3_24);

      

       //注册侦听器

       Jb3_1.addActionListener(new JPanelclass1_3Event(this));

       Jb3_24.addActionListener(new JPanelclass1_3Event(this));

      

       //选项卡4

       JPanel panel_4 = new JPanel();

       panel_4.setLayout(new GridLayout(0, 1, 0, 0));

       JT1.addTab("查询教师信息", null, panel_4, null);

      

       JPanel J4 = new JPanel();

       J4.setBorder(new TitledBorder(null, "查询教师信息", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       J4.setLayout(new GridLayout(2, 1, 0, 0));

       panel_4.add(J4);

      

       JPanel Jp4_1 = new JPanel();

       Jp4_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       J4.add(Jp4_1);

       JLabel Jl4_1 = new JLabel("请输入读者号:");

        CXtextField4_1 = new JTextField();

        CXtextField4_1.setColumns(20);

       JButton Jb4_1 = new JButton(" 查询该教师 ");

       Jb4_1.setIcon(new ImageIcon("images/b.png"));

       Jp4_1.add(Jl4_1);

       Jp4_1.add(CXtextField4_1);

       Jp4_1.add(Jb4_1);

      

       CXJp4_2 = new JPanel();

       CXJp4_2.setLayout(new BorderLayout());

       CXJp4_2.setBorder(new TitledBorder(null, "查询结果", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       J4.add(CXJp4_2);

      

       //注册侦听器

       Jb4_1.addActionListener(new JPanelclass1_4Event(this));

    }

}

图书信息管理的实现:

class JPanelclass2 extends JPanel{

     

     //选项卡1

     JTextField ZJtextField1_1;

     JTextField ZJtextField1_12;

     JTextField ZJtextField1_2;

     JTextField ZJtextField1_22;

     JTextField ZJtextField1_3;

     JTextField ZJtextField1_32;

     

     //选项卡2

     JTextField SCtextField2_1;

     JPanel SCJp2_2;

     

     //选项卡3

     JTextField XGtextField3_1;

     JTextField XGtextField3_21;

     JTextField XGtextField3_22;

     JTextField XGtextField3_221;

     JTextField XGtextField3_222;

     JTextField XGtextField3_23;

     

     //选项卡4

     JTextField CXtextField14;

     JPanel CXJp4_2;

   

    public JPanelclass2(){

       setLayout(new BorderLayout(0, 0));

       setBorder(new LineBorder(Color.LIGHT_GRAY));

      

       //选择面板

       JTabbedPane JT1 = new JTabbedPane(JTabbedPane.TOP);

       add(JT1);

      

       //选项卡1

       JPanel panel_1 = new JPanel();

       panel_1.setLayout(new GridLayout(0, 1, 0, 0));

       JT1.addTab("增加图书信息", null, panel_1, null);

      

       JPanel J1 = new JPanel();

       J1.setBorder(new TitledBorder(null, "增加图书信息", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       J1.setLayout(new GridLayout(4, 1, 0, 0));

       panel_1.add(J1);

      

       JPanel Jp1_1 = new JPanel();

       Jp1_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       J1.add(Jp1_1);

       JLabel Jl1_1 = new JLabel("  ISBN:");

       ZJtextField1_1 = new JTextField();

       ZJtextField1_1.setColumns(20);

       JLabel Jl1_12 = new JLabel("*必填   书名:");

        ZJtextField1_12 = new JTextField();

       ZJtextField1_12.setColumns(20);

       JLabel Jl1_13 = new JLabel("*必填");

       Jp1_1.add(Jl1_1);

       Jp1_1.add(ZJtextField1_1);

       Jp1_1.add(Jl1_12);

       Jp1_1.add(ZJtextField1_12);

       Jp1_1.add(Jl1_13);

      

       JPanel Jp1_2 = new JPanel();

       J1.add(Jp1_2);

       JLabel Jl1_2 = new JLabel("作  者:");

       ZJtextField1_2 = new JTextField();

       ZJtextField1_2.setColumns(20);

       JLabel Jl1_22 = new JLabel("*必填   价格:");

       ZJtextField1_22 = new JTextField();

       ZJtextField1_22.setColumns(20);

       JLabel Jl1_23 = new JLabel("*必填");

       Jp1_2.add(Jl1_2);

       Jp1_2.add(ZJtextField1_2);

       Jp1_2.add(Jl1_22);

       Jp1_2.add(ZJtextField1_22);

       Jp1_2.add(Jl1_23);

      

       JPanel Jp1_3 = new JPanel();

       J1.add(Jp1_3);

       JLabel Jl1_3 = new JLabel("出版社:");

       ZJtextField1_3 = new JTextField();

       ZJtextField1_3.setColumns(20);

       JLabel Jl1_32 = new JLabel("*必填   类型:");

       ZJtextField1_32 = new JTextField();

       ZJtextField1_32.setColumns(20);

       JLabel Jl1_33 = new JLabel("     ");

       Jp1_3.add(Jl1_3);

       Jp1_3.add(ZJtextField1_3);

       Jp1_3.add(Jl1_32);

       Jp1_3.add(ZJtextField1_32);

       Jp1_3.add(Jl1_33);

      

       JPanel Jp1_4 = new JPanel();

       J1.add(Jp1_4);

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

       Jb1_4.setIcon(new ImageIcon("images/ZJ.png"));

       Jp1_4.add(Jb1_4);

      

       //注册侦听器

       Jb1_4.addActionListener(new JPanelclass2_1Event(this));

      

       //选项卡2

       JPanel panel_2 = new JPanel();

       panel_2.setLayout(new GridLayout(0, 1, 0, 0));

       JT1.addTab("删除图书信息", null, panel_2, null);

      

       JPanel J2 = new JPanel();

       J2.setBorder(new TitledBorder(null, "删除图书信息", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       J2.setLayout(new GridLayout(3, 1, 0, 0));

       panel_2.add(J2);

      

       JPanel Jp2_1 = new JPanel();

       Jp2_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 25));

       J2.add(Jp2_1);

       JLabel Jl2_1 = new JLabel("请输入ISBN:");

       SCtextField2_1 = new JTextField();

       SCtextField2_1.setColumns(20);

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

       Jb2_1.setIcon(new ImageIcon("images/b.png"));

       Jp2_1.add(Jl2_1);

       Jp2_1.add(SCtextField2_1);

       Jp2_1.add(Jb2_1);

      

       SCJp2_2 = new JPanel();

       SCJp2_2.setLayout(new BorderLayout());

       SCJp2_2.setBorder(new TitledBorder(null, "查询结果", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       J2.add(SCJp2_2);

      

       JPanel Jp2_3 = new JPanel();

       Jp2_3.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 25));

       J2.add(Jp2_3);

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

       Jb2_2.setIcon(new ImageIcon("images/SC.png"));

       Jp2_3.add(Jb2_2);

      

       //注册侦听器

       Jb2_1.addActionListener(new JPanelclass2_2Event(this));

       Jb2_2.addActionListener(new JPanelclass2_2Event(this));

      

       //选项卡3

       JPanel panel_3 = new JPanel();

       panel_3.setLayout(new GridLayout(0, 1, 0, 0));

       JT1.addTab("修改图书信息", null, panel_3, null);

      

       JPanel J3 = new JPanel();

       J3.setBorder(new TitledBorder(null, "修改图书信息", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       J3.setLayout(new GridLayout(2, 1, 0, 0));

       panel_3.add(J3);

      

       JPanel Jp3_1 = new JPanel();

       Jp3_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       J3.add(Jp3_1);

       JLabel J3_1 = new JLabel("请输入ISBN:");

       XGtextField3_1 = new JTextField();

       XGtextField3_1.setColumns(20);

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

       Jb3.setIcon(new ImageIcon("images/b.png"));

       Jp3_1.add(J3_1);

       Jp3_1.add(XGtextField3_1);

       Jp3_1.add(Jb3);

      

       JPanel Jp3_2 = new JPanel();

       Jp3_2.setBorder(new TitledBorder(null, "修改信息", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       Jp3_2.setLayout(new GridLayout(4, 1, 0, 0));

       J3.add(Jp3_2);

      

       JPanel Jp3_21 = new JPanel();

       Jp3_2.add(Jp3_21);

       JLabel J3_21 = new JLabel("书  名:");

       XGtextField3_21 = new JTextField();

       XGtextField3_21.setColumns(20);

       JLabel J3_22 = new JLabel("  作  者:");

       XGtextField3_22 = new JTextField();

       XGtextField3_22.setColumns(20);

       Jp3_21.add(J3_21);

       Jp3_21.add(XGtextField3_21);

       Jp3_21.add(J3_22);

       Jp3_21.add(XGtextField3_22);

      

       JPanel Jp3_22 = new JPanel();

       Jp3_2.add(Jp3_22);

       JLabel J3_221 = new JLabel("价  格:");

       XGtextField3_221 = new JTextField();

       XGtextField3_221.setColumns(20);

       JLabel J3_222 = new JLabel("  出版社:");

        XGtextField3_222 = new JTextField();

       XGtextField3_222.setColumns(20);

       Jp3_22.add(J3_221);

       Jp3_22.add(XGtextField3_221);

       Jp3_22.add(J3_222);

       Jp3_22.add(XGtextField3_222);

      

       JPanel Jp3_23 = new JPanel();

       Jp3_2.add(Jp3_23);

       JLabel J3_23 = new JLabel("  类  型:");

       XGtextField3_23 = new JTextField();

       XGtextField3_23.setColumns(20);

       JLabel J3_232 = new JLabel("                                  ");

       Jp3_23.add(J3_23);

       Jp3_23.add(XGtextField3_23);

       Jp3_23.add(J3_232);

      

       JPanel Jp3_24 = new JPanel();

       Jp3_2.add(Jp3_24);

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

       Jb3_23.setIcon(new ImageIcon("images/XG.png"));

       Jp3_24.add(Jb3_23);

      

       //注册侦听器

       Jb3.addActionListener(new JPanelclass2_3Event(this));

       Jb3_23.addActionListener(new JPanelclass2_3Event(this));

      

       //选项卡4

       JPanel panel_4 = new JPanel();

       panel_4.setLayout(new GridLayout(0, 1, 0, 0));

       JT1.addTab("查询图书信息", null, panel_4, null);

      

       JPanel J4 = new JPanel();

       J4.setBorder(new TitledBorder(null, "查询图书信息", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       J4.setLayout(new GridLayout(2, 1, 0, 0));

       panel_4.add(J4);

       

       JPanel Jp4_1 = new JPanel();

       Jp4_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       J4.add(Jp4_1);

       JLabel Jl4 = new JLabel("请输入ISBN:");

       CXtextField14 = new JTextField();

       CXtextField14.setColumns(20);

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

       Jb4.setIcon(new ImageIcon("images/b.png"));

       Jp4_1.add(Jl4);

       Jp4_1.add(CXtextField14);

       Jp4_1.add(Jb4);

      

       CXJp4_2 = new JPanel();

       CXJp4_2.setLayout(new BorderLayout());

       CXJp4_2.setBorder(new TitledBorder(null, "查询结果", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       J4.add(CXJp4_2);

      

       //注册侦听器

       Jb4.addActionListener(new JPanelclass2_4Event(this));

    }

}

借书登记板块的实现:

代码为:

class JPanelclass3 extends JPanel{

   

    JTextField textField11;

    JTextField textField12;

    JPanel Jp2;

    publicstatic JTextField textField21;

    publicstatic JTextField textField22;

   

    public JPanelclass3(){

       setBorder(new TitledBorder(null, "图书借阅登记", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       setLayout(new GridLayout(3, 1, 0, 0));

      

       JPanel Jp1 = new JPanel();

       Jp1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 25));

       add(Jp1);

       JLabel Jl11 = new JLabel("读者号  :");

       textField11 = new JTextField();

       textField11.setColumns(20);

       JLabel Jl12 = new JLabel("     ISBN:");

       textField12 = new JTextField();

       textField12.setColumns(20);

       Jp1.add(Jl11);

       Jp1.add(textField11);

       Jp1.add(Jl12);

       Jp1.add(textField12);

      

       Jp2 = new JPanel();

       Jp2.setBorder(new TitledBorder(null, "借阅信息", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       Jp2.setLayout(new BorderLayout());

       add(Jp2);

      

       JPanel Jp3 = new JPanel();

       Jp3.setLayout(new GridLayout(3, 1, 0, 0));

       add(Jp3);

       JPanel Jp3_1 = new JPanel();

       Jp3_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jp3.add(Jp3_1);

       JLabel Jl21 = new JLabel("当前时间:");

       textField21 = new JTextField();

       textField21.setColumns(25);

       JLabel Jl22 = new JLabel("  办理人  :");

       textField22 = new JTextField();

       textField22.setColumns(20);

       Jp3_1.add(Jl21);

       Jp3_1.add(textField21);

       Jp3_1.add(Jl22);

       Jp3_1.add(textField22);

       JPanel Jp3_2 = new JPanel();

       Jp3_2.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jp3.add(Jp3_2);

       JButton Jb3_2 = new JButton(" 借阅 ");

       Jb3_2.setIcon(new ImageIcon("images/JY.png"));

       Jp3_2.add(Jb3_2);

      

       //注册侦听器

       Jb3_2.addActionListener(new JPanelclass3Event(this));

    }

}

还书登记板块的实现:

代码为:

class JPanelclass4 extends JPanel{

   

    JTextField textField1;

    publicstatic JTextField textField1_21;

    publicstatic JTextField textField1_22;

    JTextField textField2_11;

    JTextField textField2_12;

    JTextField textField2_21;

    JTextField textField2_22;

    JTextField textField2_31;

    JTextField textField2_32;

   

    public JPanelclass4(){

       setBorder(new TitledBorder(null, "图书归还登记", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       setLayout(new GridLayout(2, 1, 0, 0));

      

       JPanel Jp1 = new JPanel();

       Jp1.setLayout(new GridLayout(2, 1, 0, 0));

       add(Jp1);

      

       JPanel Jp1_1 = new JPanel();

       Jp1_1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jp1.add(Jp1_1);

       JLabel Jl1 = new JLabel("ISBN:");

       textField1 = new JTextField();

       textField1.setColumns(20);

       JButton Jb1 = new JButton(" 归还 ");

       Jb1.setIcon(new ImageIcon("images/GH.png"));

       Jp1_1.add(Jl1);

       Jp1_1.add(textField1);

       Jp1_1.add(Jb1);

      

       JPanel Jp1_2 = new JPanel();

       Jp1_2.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 20));

       Jp1_2.setBorder(new TitledBorder(null, "系统信息", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       Jp1.add(Jp1_2);

       JLabel Jl1_21 = new JLabel("当前系统时间:");

       textField1_21 = new JTextField();

       textField1_21.setColumns(25);

       JLabel Jl1_22 = new JLabel("  归还办理人:");

       textField1_22 = new JTextField();

       textField1_22.setColumns(20);

       Jp1_2.add(Jl1_21);

       Jp1_2.add(textField1_21);

       Jp1_2.add(Jl1_22);

       Jp1_2.add(textField1_22);

      

       //

       JPanel Jp2 = new JPanel();

       Jp2.setBorder(new TitledBorder(null, "归还提示", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       Jp2.setLayout(new GridLayout(3, 1, 0, 0));

       add(Jp2);

      

       JPanel Jp2_1 = new JPanel();

       Jp2.add(Jp2_1);

       JLabel Jl2_11 = new JLabel("教师姓名:");

       textField2_11 = new JTextField();

       textField2_11.setColumns(30);

       JLabel Jl2_12 = new JLabel("  书    名:");

       textField2_12 = new JTextField();

       textField2_12.setColumns(30);

       Jp2_1.add(Jl2_11);

       Jp2_1.add(textField2_11);

       Jp2_1.add(Jl2_12);

       Jp2_1.add(textField2_12);

      

       JPanel Jp2_2 = new JPanel();

       Jp2.add(Jp2_2);

       JLabel Jl2_21 = new JLabel("借书日期:");

       textField2_21 = new JTextField();

       textField2_21.setColumns(30);

       JLabel Jl2_22 = new JLabel("  归还日期:");

       textField2_22 = new JTextField();

       textField2_22.setColumns(30);

       Jp2_2.add(Jl2_21);

       Jp2_2.add(textField2_21);

       Jp2_2.add(Jl2_22);

       Jp2_2.add(textField2_22);

      

       JPanel Jp2_3 = new JPanel();

       Jp2.add(Jp2_3);

       JLabel Jl2_31 = new JLabel("期限天数:");

       textField2_31 = new JTextField();

       textField2_31.setColumns(30);

       JLabel Jl2_32 = new JLabel("  违期天数:");

       textField2_32 = new JTextField();

       textField2_32.setColumns(30);

       Jp2_3.add(Jl2_31);

       Jp2_3.add(textField2_31);

       Jp2_3.add(Jl2_32);

       Jp2_3.add(textField2_32);

      

       //注册侦听器

       Jb1.addActionListener(new JPanelclass4Event(this));

    }

}

催还板块功能的实现:

代码为:

class JPanelclass5 extends JPanel{

   

    JPanel Jp1;

    public JPanelclass5(){

       setBorder(new TitledBorder(null, "违期催还", TitledBorder.CENTER, TitledBorder.TOP, null, null));

       setLayout(new GridLayout(2, 1, 0, 0));

      

       Jp1 = new JPanel();

       Jp1.setBorder(new TitledBorder(null, "违期信息", TitledBorder.LEADING, TitledBorder.TOP, null, null));

       Jp1.setLayout(new BorderLayout());

       add(Jp1);

      

       JPanel Jp2 = new JPanel();

       Jp2.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 30));

       add(Jp2);

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

       Jb2.setIcon(new ImageIcon("images/b.png"));

       Jp2.add(Jb2);

      

       //注册侦听器

       Jb2.addActionListener(new JPanelclass5Event(this));

    }

}

工作体会:

         这是第一次与别人(其他班的学生许子轩)合作做程序,他负责做界面,我则负责做事件处理以及数据库的连接。但由于是第一次,因此两个人之间的意见偶尔会冲突。比如,他做界面的时候,是按照他的想法做的,而我在做事件处理的时候,是按照我的想法做的,当然,我们两个人之间之前已经有过沟通,所以我们是经过了很多次的沟通交流,才最终磨合修改,完成了程序。

在做事件处理的时候,因为事件很多,处理起来很乱很乱,甚至有些时候会搞乱哪个动作会发生什么样的事件,我想这是我缺少实践的关系。而且事件的名字经常会弄错,变量名也经常弄错,这里让我花费了很多的时间去分析,不过还好,因为我起类名和变量名的时候,有一定的规律,这点帮助了我不少,因此以后起类名和变量名的时候,必须要遵守一定的规律,而不是随便起a,b,c之类的名字。

在数据库连接方面,个人感觉数据库连接比较麻烦,需要设置很多的东西,比如登录名,相关服务的启动等等,而且由于自己还没尝试过sql2005的数据库连接,所以我失败了很多很多次,终于在尝试了N遍后,可以成功连接数据库了,失败的主要原因在于登录名方面出了错误。

总而言之,在与别人合作做项目的时候,事前一定要先沟通好,这样才能避免途中起意见的冲突,而且这时候项目已经做到一半,再修改的话事很花费时间的。做事件处理要逐步就班,哪些按钮,哪些动作会产生什么样的事件,要添加什么样的侦听器,这些都要经过深思熟虑之后才能开展的。否则到时候只会越做越乱。一个好的程序,一定要有序。数据库方面,因为不同的数据库有不同的设置方法,这点应该多实践几次,才能“以不变应万变”。

更多相关推荐:
图书管理系统 实验报告

需求分析本图书管理系统就是将传统图书馆业务的手工操作转变成由计算机馆理即图书馆的图书期刊音像资料等各种载体文献的采编典藏流通检索及常规业务管理等工作利用计算机技术使得图书馆的管理更智能更有效的进行最终的目的以方...

(图书管理系统)学生实验报告

学生实验报告实验课名称软件工程理论方法与实践实验项目名称图书管理系统专业名称软件工程班学级240600804号2406080426学生姓名宋辉教师姓名杜瑾年月实验日期20xx年5月14日实验室名称WM2502一...

图书管理系统实训报告

淮南联合大学计算机系课程实训报告书实训科目:图书管理系统专业班级:11级计算机应用技术学号:姓名:实训时间:20##-12-18一、课程实训目的《JAVAWeb开发》课程实训是计算机应用技术专业集中实践性环节之…

图书管理系统课程设计报告

管理信息系统实习报告专业班级学生姓名指导教师时间成绩评语王桃群20xx32320xx313一课程设计题目图书管理系统二系统需求1系统的准备操作系统Windowsxp数据库系统SQLServer20xx或SQLS...

c语言图书管理系统课程设计报告

沈航北方科技学院课程设计说明书课程名称教学部专业数控班级B042111学号B04211123学生姓名指导教师赵小磊20xx年6月链表实现图书信息操作田文目录摘要31绪论32系统分析321功能需求322数据需求4...

图书管理系统数据库课程设计实验报告

西安邮电大学计算机学院数据库课程设计报告题目图书管理系统专业名称班级软件1205学生姓名学号8位04123139指导教师樊珊起止时间20xx年06月02日20xx年06月13日目录第一章需求分析1学生用户端2教...

图书管理系统课程设计报告

内容提要本文介绍了一个基于ClientServer模式的高校图书管理系统的设计与实现运用VB结合SQLServer20xx开发的登录模块主要用于验证用户身份进行有效的操作从主界面模块在验证后进入每个子模块进行各...

精品图书馆管理系统课程设计报告-定

图书馆管理系统课程设计报告课题名称:图书馆管理系统_一、需求分析图书管理系统需要满足图书馆管理人员、读者等人的需求。图书馆管理人员对图书读者的借阅及还书要求进行操作,同时形成借书或还书报表给读者查看确认,还可通…

c++图书信息管理系统课程设计报告

C语言程序课程设计报告课程设计题目图书信息管理系统学号20xx103120xx1姓名曾智煌专业电气工程及其自动化班级13电气1班20xx年12月12日图书管理系统一设计目的图书馆是目前生活中除了网络外的另一个获...

c++图书管理系统实验报告+源代码

综合实践报告1设计任务11设计目的运用所学知识完成图书馆管理系统通过实践加强对所学知识的理解和巩固12设计内容建立图书馆管理系统用户分为图书管理人员读者管理人员可以增加删除查看图书读者读者只能查看自身信息和借还...

C++大型实验报告--图书管理系统

CC语言程序设计大型实验报告图书管理系统CC语言程序设计第一章概述大型实验报告图书管理系统浙江工业大学软件学院二零零九年五月目录1CC语言程序设计大型实验报告图书管理系统11实验意义12说明13实验内容第二章简...

学校图书管理系统课程设计报告正文

目录第1章绪论2第2章需求分析2第3章总体设计3第4章数据库设计441概念结构设计442逻辑结构与物理结构设计5第5章详细设计7第6章编码8第7章测试1471测试1472发现错误和解决方法15第8章设计总结16...

图书管理系统实验报告(27篇)