1、Java编写简单图书管理系统主界面代码实现package Library;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;imp
2、ort java.sql.Statement;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;public class Login extends JFrame private static
3、 final long serialVersionUID = 1L;private JLabel jlUsername;private JLabel jlPwd;private JTextField txtUsername; /用户名private JTextField txtPassword; /密码private JButton jbOk;private JButton jbCancel;public JLabel getJlUsername() if(jlUsername=null)jlUsername=new JLabel(账号);jlUsername.setForeground(Co
4、lor.BLACK);jlUsername.setBounds(118, 40, 85, 30);return jlUsername;public JLabel getJlPwd() if(jlPwd=null)jlPwd=new JLabel(密码);jlPwd.setForeground(Color.BLACK);jlPwd.setBounds(118, 100, 85, 30);return jlPwd;public JTextField getTxtUsername() if(txtUsername=null)txtUsername=new JTextField(20);txtUser
5、name.setBounds(180,40 , 200, 30);return txtUsername;public JTextField getTxtPassword() if(txtPassword=null)txtPassword=new JPasswordField(20);txtPassword.setBounds(180, 100, 200, 30);return txtPassword;public JButton getJbOk() if(jbOk=null)jbOk=new JButton(登陆);jbOk.setBounds(150, 180, 90, 30);/jbOk.
6、addActionListener(this);return jbOk;public JButton getJbCancel() if(jbCancel=null)jbCancel=new JButton(取消);jbCancel.setBounds(300, 180, 90, 30);return jbCancel;public Login(String title)super(title);/JFrame frame=new JFrame();Container cantainer=this.getContentPane();this.setDefaultCloseOperation(JF
7、rame.EXIT_ON_CLOSE);ImageIcon img = new ImageIcon(F:Java传习srcLibraryZFXYH48I_U)C4M2C4.jpg);/这是背景图片JLabel imgLabel = new JLabel(img);/将背景图放在标签里。this.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE);/注意这里是关键,将背景标签添加到jframLayeredPane面板里。imgLabel.setBounds(0,0,img.getIconWidth(), img.getIco
8、nHeight();/设置背景标签位置cantainer.setLayout(new BorderLayout();imgLabel.setLayout(null);imgLabel.add(getJlUsername();imgLabel.add(getTxtUsername();imgLabel.add(getJlPwd();imgLabel.add(getTxtPassword();imgLabel.add(getJbOk();imgLabel.add(getJbCancel();cantainer.add(imgLabel,BorderLayout.NORTH);(JPanel)can
9、tainer).setOpaque(false); /注意这里,将内容面板设为透明。这么LayeredPane面板中背景才能显示出来。this.setSize(img.getIconWidth(),img.getIconHeight();myEvent();this.setVisible(true);this.setResizable(true);private void myEvent()jbCancel.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)Login.this.dis
10、pose(););jbOk.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)Connection conn=null;Statement stm=null;ResultSet st=null;tryClass.forName(com.mysql.jdbc.Driver);conn=DriverManager.getConnection(jdbc:mysql:/localhost:3306/library,sa,123456);stm=conn.createStatement();St
11、ring sql=select * from user;/String sql1=select psw from user;st=stm.executeQuery(sql);/ st1=stm.executeQuery(sql1);if(st.next()if(txtUsername.getText().equals(st.getString(id)&txtPassword.getText().equals(st.getString(psw)Login.this.setVisible(false);new Book(管理界面);elseJOptionPane.showMessageDialog
12、(null, 您输入账号或密码不正确);getTxtUsername().setText();getTxtPassword().setText();else JOptionPane.showMessageDialog(null,用户名不存在,请重新输入,错误!); getTxtUsername().setText();getTxtPassword().setText();catch(ClassNotFoundException e1)e1.printStackTrace(); catch (SQLException e2) / TODO Auto-generated catch blocke2
13、.printStackTrace();finallytrystm.close();catch (Exception e3) / 关闭Connection try conn.close(); catch (Exception e4) );public static void main(String args)new Login(图书管理登陆界面);管理界面实现代码package Library;import java.awt.BorderLayout;import java.awt.Container;import java.awt.event.ActionEvent;import java.a
14、wt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;impo
15、rt javax.swing.JTable;import javax.swing.JTextField;public class Book extends JFrame private static final long serialVersionUID = 1L;private JLabel lblId;private JLabel lblBname;private JLabel lblWname;private JLabel lblCbs;private JLabel lblnum1;private JLabel lblnum2;private JTextField bId; /图书编号p
16、rivate JTextField bname; /书名private JTextField wname; /作者名private JTextField cbs; /出版社private JTextField num1; /现存量private JTextField num2; /库存量private JButton jbDel;private JTextField jDel;private JButton jbAdd;private JButton jbSearch;private JButton jbUpdate;private JTable table;private JLabel ja
17、bel;/输入要查找书号public JLabel getJabel() if(jabel=null)jabel=new JLabel(查删学号);jabel.setBounds(50, 350, 50, 30);return jabel;public JButton getJbDel() if(jbDel=null)jbDel=new JButton(删除);jbDel.setBounds(180, 400, 60, 30);return jbDel;public JTextField getjDel() if(jDel=null)jDel=new JTextField(20);jDel.s
18、etBounds(100, 350, 150, 30);return jDel;public JButton getJbAdd() if(jbAdd=null)jbAdd=new JButton(添加);jbAdd.setBounds(100,400,60,30);return jbAdd;public JButton getJbSearch() if(jbSearch=null)jbSearch=new JButton(查找);jbSearch.setBounds(100, 450, 60, 30);return jbSearch;public JButton getJbUpdate() i
19、f(jbUpdate=null)jbUpdate=new JButton(修改);jbUpdate.setBounds(180, 450, 60, 30);return jbUpdate;public JTable getTable() if(table=null)table=new JTable(100,6);table.setBounds(270, 50, 500, 600);return table;public JLabel getLblId() if(lblId=null)lblId=new JLabel(编号);lblId.setBounds(50, 50, 50, 30);ret
20、urn lblId;public JLabel getLblBname() if(lblBname=null)lblBname=new JLabel(书名);lblBname.setBounds(50, 100, 50, 30);return lblBname;public JLabel getLblWname() if(lblWname=null)lblWname=new JLabel(作者);lblWname.setBounds(50,150, 50, 30);return lblWname;public JLabel getLblnum1() if(lblnum1=null)lblnum
21、1=new JLabel(现存量);lblnum1.setBounds(50,200, 50, 30);return lblnum1;public JLabel getLblnum2() if(lblnum2=null)lblnum2=new JLabel(库存量);lblnum2.setBounds(50,250, 50, 30);return lblnum2;public JTextField getbId() if(bId=null)bId=new JTextField(20);bId.setBounds(100, 50,150, 30);return bId;public JTextF
22、ield getBname() if(bname=null)bname=new JTextField(20);bname.setBounds(100, 100, 150, 30);return bname;public JTextField getWname() if(wname=null)wname=new JTextField(20);wname.setBounds(100, 150, 150, 30);return wname;public JTextField getNum1() if(num1=null)num1=new JTextField(20);num1.setBounds(1
23、00, 200, 150, 30);return num1;public JTextField getNum2() if(num2=null)num2=new JTextField(20);num2.setBounds(100, 250, 150, 30);return num2;public JLabel getLblCbs() if(lblCbs=null)lblCbs=new JLabel(出版社);lblCbs.setBounds(50,300, 50, 30);return lblCbs;public JTextField getCbs() if(cbs=null)cbs=new J
24、TextField(20);cbs.setBounds(100, 300, 150, 30);return cbs;public Book(String title)super(title);/JFrame frame=new JFrame();Container cantainer=this.getContentPane();this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);ImageIcon img = new ImageIcon(F:Java传习srcLibraryd50735fae6cd7b8961e8eafd0f2442a7d83
25、30ecc1.jpg);/这是背景图片JLabel imgLabel = new JLabel(img);/将背景图放在标签里。this.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE);/注意这里是关键,将背景标签添加到jframLayeredPane面板里。imgLabel.setBounds(0,0,img.getIconWidth(), img.getIconHeight();/设置背景标签位置cantainer.setLayout(new BorderLayout();imgLabel.setLayout(nu
26、ll);imgLabel.add(getLblId();imgLabel.add(getbId();imgLabel.add(getLblBname();imgLabel.add(getBname();imgLabel.add(getLblWname();imgLabel.add(getWname();imgLabel.add(getLblnum1();imgLabel.add(getNum1();imgLabel.add(getLblnum2();imgLabel.add(getNum2();imgLabel.add(getLblCbs();imgLabel.add(getCbs();img
27、Label.add(getTable();imgLabel.add(getJbDel();imgLabel.add(getjDel();imgLabel.add(getJbAdd();imgLabel.add(getJbSearch();imgLabel.add(getJbUpdate();imgLabel.add(getJabel();cantainer.add(imgLabel,BorderLayout.NORTH);(JPanel)cantainer).setOpaque(false); /注意这里,将内容面板设为透明。这么LayeredPane面板中背景才能显示出来。this.setS
28、ize(img.getIconWidth(),img.getIconHeight();myEvent();this.setVisible(true);this.setResizable(true);private void myEvent() / TODO Auto-generated method stubjbAdd.addActionListener(new ActionListener()public void actionPerformed(ActionEvent ee)Connection conn=null;Statement stm=null;String id1=bId.get
29、Text();String name1=bname.getText();String name2=wname.getText();String n1=num1.getText();String n2=num2.getText();String chubs=cbs.getText();tryClass.forName(com.mysql.jdbc.Driver);conn=DriverManager.getConnection(jdbc:mysql:/localhost:3306/library,sa,123456);stm=conn.createStatement();String sql=i
30、nsert into book values(+id1+,+name1+,+name2+,+n1+,+n2+,+chubs+);stm.executeUpdate(sql);getbId().setText();getBname().setText();getWname().setText();getNum1().setText();getNum2().setText();getCbs().setText();catch(ClassNotFoundException e) catch (SQLException e) / TODO Auto-generated catch blocke.pri
31、ntStackTrace();finally / 关闭Statement try stm.close(); catch (Exception e) / 关闭Connection try conn.close(); catch (Exception e) );jbDel.addActionListener(new ActionListener()public void actionPerformed(ActionEvent ee)String id=jDel.getText();Connection conn=null;Statement stm=null;tryClass.forName(co
32、m.mysql.jdbc.Driver);conn=DriverManager.getConnection(jdbc:mysql:/localhost:3306/library,sa,123456);/String sql=select * from book;String sql=delete from book where Bid=+id+;stm=conn.createStatement();stm.executeUpdate(sql);getjDel().setText();catch(ClassNotFoundException e) catch (SQLException e) /
33、 TODO Auto-generated catch blocke.printStackTrace();finally / 关闭Statement try stm.close(); catch (Exception e) / 关闭Connection try conn.close(); catch (Exception e) );jbSearch.addActionListener(new ActionListener()public void actionPerformed(ActionEvent ee)String id=jDel.getText();Connection conn=nul
34、l;Statement stm=null;ResultSet rst=null;tryClass.forName(com.mysql.jdbc.Driver);conn=DriverManager.getConnection(jdbc:mysql:/localhost:3306/library,sa,123456);/String sql=select * from book;String sql=select * from book where Bid=+id+;stm=conn.createStatement();rst=stm.executeQuery(sql);if(rst.next(
35、)getbId().setText(rst.getString(Bid);getBname().setText(rst.getString(Bname);getWname().setText(rst.getString(Wname);getNum1().setText(rst.getString(num1);getNum2().setText(rst.getString(num2);getCbs().setText(rst.getString(chubs);getjDel().setText();catch(ClassNotFoundException e) catch (SQLExcepti
36、on e) / TODO Auto-generated catch blocke.printStackTrace();finally / 关闭Statement try stm.close(); catch (Exception e) / 关闭Connection try conn.close(); catch (Exception e) );jbUpdate.addActionListener(new ActionListener()public void actionPerformed(ActionEvent ee)String id1=bId.getText();String name1
37、=bname.getText();String name2=wname.getText();String n1=num1.getText();String n2=num2.getText();String chubs=cbs.getText();Connection conn=null;Statement stm=null;tryClass.forName(com.mysql.jdbc.Driver);conn=DriverManager.getConnection(jdbc:mysql:/localhost:3306/library,sa,123456);String sql=update
38、library.book set Bname=+name1+,Wname=+name2+,num1=+n1+,num2=+n2+,chubs=+chubs+ where Bid=+id1+;stm=conn.createStatement();stm.executeUpdate(sql);catch(ClassNotFoundException e) catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();finally / 关闭Statement try stm.close(); catch (Exception e) / 关闭Connection try conn.close(); catch (Exception e) );数据库:UserBook
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100