java做的簡單圖書管理系統(tǒng)_第1頁
java做的簡單圖書管理系統(tǒng)_第2頁
java做的簡單圖書管理系統(tǒng)_第3頁
java做的簡單圖書管理系統(tǒng)_第4頁
java做的簡單圖書管理系統(tǒng)_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、package Tools; import java.sql.*;import org.junit.Test;public class ConnDBConnection con;Statement stmt = null;ResultSet rs = null;String driverName=com.mysql.jdbc.Driver;/驅動程序名String user=root; /MySQL 配置時的用戶名String password=root; /MySQL 配置時的 密碼String url=jdbc:mysql:/localhost:3306/library; /URL 指向要

2、訪問的數據庫地址/連接數據庫public ConnDB() tryClass.forName(driverName);/加載數據庫程序con = DriverManager.getConnection(url, user, password);/ 使用getConnection() 方法,連接 MySQL 數據庫!if (!con.isClosed()System.out.println( 連接成功 !);elseSystem.out.println( 連接失敗 !); catch(Exception e)System.err.println(e.getMessage();/執(zhí)行 SQL 查詢

3、,并返回查詢結果集public ResultSet select(String sql)tryClass.forName(driverName);con = DriverManager.getConnection(url,user,password);stmt=con.createStatement(); rs=stmt.executeQuery(sql);catch(Exception e)System.err.println(e.getMessage(); return rs;Testpublic void testSelect()/* 執(zhí)行 SQL 更新,并返回影響到的記錄條數*/pub

4、lic int update(String sql)int rs=0;tryClass.forName(driverName);con=DriverManager.getConnection(url,user,password);stmt=con.createStatement();rs=stmt.executeUpdate(sql);catch(Exception e)System.err.println(e.getMessage();return rs;public void testupdate()public static void main(String args)new ConnD

5、B();package Library.Management.System;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import javax.swing.text.JTextComponent;import Tools.ConnDB;public class addInterface implements ActionListener JFrame frame;JPanel p1,p2,p3;JLabel l1,l2

6、,l3,l4;JTextField t1,t2,t3,t4;JButton last,next,enter,cancel,delete; public addInterface()frame = new JFrame( 增加 /修改 );l1 = new JLabel( 圖書編號 ); t1 = new JTextField(10);l2 = new JLabel( 書本名稱 );t2 = new JTextField(10);l3 = new JLabel( 定價);t3 = new JTextField(10);l4 = new JLabel( 出版社);t4 = new JTextFie

7、ld(10);p1 = new JPanel();libraryp1.add(l1);p1.add(t1);p1.add(l2);p1.add(t2);p2 = new JPanel(); p2.add(l3); p2.add(t3); p2.add(l4); p2.add(t4);p3=new JPanel();last = new JButton( 上一條 ); next = new JButton( 下一條 ); enter = new JButton( 確認 ); delete = new JButton( 刪除 ); cancel = new JButton( 取消 );p3.add

8、(last);p3.add(next);p3.add(enter);p3.add(cancel);p3.add(delete); enter.addActionListener(this); cancel.addActionListener(this);frame.add(BorderLayout.NORTH,p1); frame.add(BorderLayout.CENTER,p2);frame.add(BorderLayout.SOUTH,p3); frame.setVisible(true); frame.setSize(500, 150); frame.setResizable(fal

9、se); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);/*public static void main(String args)new addInterface();*/Overridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stubif(e.getSource()=cancel)frame.dispose();if(e.getSource()=enter)ConnDB c=new ConnDB();String sql

10、= insert values(+t1.getText()+,+t2.getText()+,+t3.getText()+,+t4.getText()+);SuppressWarnings(unused)int rs = c.update(sql);String rowValues= t1.getText(),t2.getText(),t3.getText(),t4.getText();InterfaceMain.tablemodel.addRow(rowValues);package Library.Management.System;/import java.awt.*;import jav

11、a.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.ResultSet;import javax.swing.*;import Tools.ConnDB; public class selInterface implements ActionListener JFrame frame;JPanel p1,p2,p3,p4,p5,p6;JLabel l1,l2,l3;JRadioButton bh,mc,cbs;ButtonGroup g;JTextField t1,t2,t3; JButton

12、 enter,cancel;JTextArea jt;JScrollPane scrollPane; public selInterface() frame = new JFrame( 查詢 ); bh = new JRadioButton(); bh.addActionListener(this); l1 = new JLabel( 圖書編號 ); t1 = new JTextField(10); mc = new JRadioButton(); mc.addActionListener(this); l2 = new JLabel( 書本名稱 ); t2 = new JTextField(

13、10); cbs = new JRadioButton(); cbs.addActionListener(this); l3 = new JLabel( 出 版 社 ); t3 = new JTextField(10);t1.setEditable(false); t2.setEditable(false); t3.setEditable(false);g = new ButtonGroup();g.add(bh);g.add(mc);g.add(cbs);p1 = new JPanel();p1.add(bh);p1.add(l1);p1.add(t1);p2 = new JPanel();

14、 p2.add(mc);p2.add(l2);p2.add(t2);p3 = new JPanel();p3.add(cbs);p3.add(l3); p3.add(t3); p4 = new JPanel(); enter = new JButton( 確定 ); cancel = new JButton( 取消 ); enter.addActionListener(this); cancel.addActionListener(this); p4.add(enter);p4.add(cancel);p5 = new JPanel(); jt=new JTextArea(10,20); jt

15、.setEditable(false); scrollPane =new JScrollPane(jt); p5.add(scrollPane);p6 = new JPanel(); /p6.setLayout(new GridLayout(5,1); p6.add(p1);p6.add(p2);p6.add(p3);p6.add(p5);p6.add(p4);frame.add(p6); frame.setVisible(true); frame.setSize(350, 400); frame.setResizable(false); frame.setDefaultCloseOperat

16、ion(JFrame.DISPOSE_ON_CLOSE);public static void main(String args)new selInterface();Overridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stub if(bh.isSelected()t1.setEditable(true); t2.setEditable(false); t3.setEditable(false); if(mc.isSelected()書本名稱t1.setEditable(false);t

17、2.setEditable(true);t3.setEditable(false);if(cbs.isSelected()t1.setEditable(false);t2.setEditable(false);t3.setEditable(true);if(e.getSource()=enter)String sql=null;ConnDB con=new ConnDB();sql = SELECT * FROM library where 圖書編號 =+t1.getText()+ or =+t2.getText()+ or +t3.getText()+= 出版社 ;ResultSet rs

18、= con.select(sql);String tempData = new String4;try while (rs.next() for (int i = 0; i 4; i+)tempDatai = rs.getString(i + 1);jt.append(tempDatai+ );jt.append(n); catch (Exception e2) / TODO: handle exceptionif(e.getSource()=cancel)frame.dispose();package Library.Management.System;import java.awt.*;i

19、mport java.awt.event.*;import java.sql.*;import java.util.Vector;import javax.swing.*;import javax.swing.table.DefaultTableModel;import Tools.ConnDB;public class InterfaceMain implements ActionListenerJFrame frame;JPanel p1,p2,p3;JButton add,sel,del,exit;JTable table;static DefaultTableModel tablemo

20、del;JScrollPane scrollPane;Connection con;public InterfaceMain()/主界面和四個按鈕還有監(jiān)控按鈕 (北部 ) frame = new JFrame( 圖書管理系統(tǒng) ); p1 = new JPanel();add = new JButton( 增加 );sel = new JButton( 查詢 );del = new JButton( 刪除 );exit = new JButton( 退出 );p1.add(add);p1.add(sel);p1.add(del);p1.add(exit); add.addActionListen

21、er(this); sel.addActionListener(this); del.addActionListener(this); exit.addActionListener(this);/分割線 (中部 )p2 =new JPanel();JSeparator js=new JSeparator();js.setPreferredSize(new Dimension(1000,1);p2.add(js);/表格 columnName 是第一列的列名 tableValues 是表格內容 ( 南部 )Vector columnName=new Vector(); columnName.ad

22、d( 圖書編號 ); columnName.add( 書名 ); columnName.add( 定價 );columnName.add( 出版社 );VectorVector tableValue=new VectorVector();ConnDB c=new ConnDB();String sql = SELECT * FROM library;ResultSet rs = c.select(sql);try while (rs.next() Vector row=new Vector();String data = new String4;for (int i = 0; i 4; i+)

23、 datai = rs.getString(i+1); /System.out.println(datai); row.add(datai);tableValue.add(row); catch (Exception e) / TODO: handle exceptiontablemodel=new DefaultTableModel(tableValue,columnName); table = new JTable(tablemodel);table.addMouseListener(new MouseListener()Overridepublic void mouseClicked(M

24、ouseEvent e) int row = table.getSelectedRow(); SuppressWarnings(unused) Object o=tablemodel.getValueAt(row, 0);Overridepublic void mousePressed(MouseEvent e) Overridepublic void mouseReleased(MouseEvent e) Overridepublic void mouseEntered(MouseEvent e) Overridepublic void mouseExited(MouseEvent e) )

25、;scrollPane = new JScrollPane(table); p3 = new JPanel();p3.add(scrollPane);/設置整體面板屬性 frame.add(BorderLayout.NORTH,p1); frame.add(BorderLayout.CENTER,p2); frame.add(BorderLayout.SOUTH,p3); frame.setVisible(true);frame.setSize(500, 500);frame.setResizable(false); frame.setDefaultCloseOperation(WindowC

26、onstants.EXIT_ON_CLOSE);/主方法public static void main(String args)new InterfaceMain();/四個按鈕的時間處理Overridepublic void actionPerformed(ActionEvent e) / TODO Auto-generated method stub if(e.getSource()=add) new addInterface(); if(e.getSource()=sel)new selInterface(); if(e.getSource()=del)int n=JOptionPane

27、.showConfirmDialog(null, 是 否 刪 除 ? , 注 意川川,JOptio nPan e.YES_NO_OPTION );System.out.println(n);if(n=0)int row=table.getSelectedRow();Object bh= tablemodel.getV alueAt(row, 0);ConnDB con = new ConnDB();String sql = Delete FROM library where 圖書編號 =+bh;con.update(sql);tablemodel.removeRow(table.getSele

28、ctedRow();elseSystem.out.println( 取消 );if(e.getSource()=exit)System.exit(0);package Library.Management.System;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;import javax.swing.text.JTextComponent;import Tools.ConnDB;public class addInter

29、face implements ActionListener JFrame frame;JPanel p1,p2,p3;JLabel l1,l2,l3,l4;JTextField t1,t2,t3,t4;JButton last,next,enter,cancel,delete;public addInterface()frame = new JFrame( 增加 /修改 ); l1 = new JLabel( 圖書編號 ); t1 = new JTextField(10);l2 = new JLabel( 書本名稱 );t2 = new JTextField(10);l3 = new JLabel( 定價);t3 = new JTextField(10);l4 = new JLabel( 出版社);t4 = new JTextField(10);p1 = new JPanel();p1.add(l1);p1.add(t1);p1.add(l2);p1.add(t2);p2 = new JPanel(); p2.add(l3); p2.add(t3); p2.add(l4); p2.add(t4);p3=new JPanel();last = ne

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論