Java入门教程之图书管理系统(由简入繁)(七)
2017-04-20 17:37
495 查看
作者:AlexTan
E-mail: alextanbz@gmail.com
更新日志:
1. 修改 Operator.java 文件,Operator.java文件里将无任何输出代码,把从数据库里取出来的数据全放到ArrayList里,方便传给UI界面。此处修改使整个程序更符合MVC编程思想。
2. 给图书管理系统程序加上java的UI界面(ps:比较丑,但功能上基本实现了),java界面是通过用windowbuilder做的,怎么下的这里就不详细阐述了( 安装教程:http://blog.csdn.net/powmxypow/article/details/11553395 )。目前暂无什么BUG,如果有,欢迎留言。
Book.java与Database.java与前面没有任何变化,MainClass.java文件对图形界面来说没有用,所以这里就不贴这三个文件的代码了。
代码比较多,不过主要是界面的代码,后面会陆续更新发到github上...
请期待下一篇:Java入门教程之图书管理系统(由简入繁)(八)
转载请注明出处:http://blog.csdn.net/alextan_/article/details/70272804
E-mail: alextanbz@gmail.com
更新日志:
1. 修改 Operator.java 文件,Operator.java文件里将无任何输出代码,把从数据库里取出来的数据全放到ArrayList里,方便传给UI界面。此处修改使整个程序更符合MVC编程思想。
2. 给图书管理系统程序加上java的UI界面(ps:比较丑,但功能上基本实现了),java界面是通过用windowbuilder做的,怎么下的这里就不详细阐述了( 安装教程:http://blog.csdn.net/powmxypow/article/details/11553395 )。目前暂无什么BUG,如果有,欢迎留言。
目录结构:
Book.java与Database.java与前面没有任何变化,MainClass.java文件对图形界面来说没有用,所以这里就不贴这三个文件的代码了。
Operator.java:
package control; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import jdbc.Database; import model.Book; public class Operator { public static int clearKey = 12345678; public ArrayList<Book> getBookList() { ArrayList<Book> booklist = new ArrayList<Book>(); Connection conn = null; Statement stmt = null; ResultSet rs = null; //3.通过数据库的连接操作数据库,实现增删改查 try { conn = Database.getConnection(); stmt = conn.createStatement(); rs = stmt.executeQuery("select id,bookname,author,price from book");//选择import java.sql.ResultSet; while(rs.next()){//如果对象中有数据,就会循环打印出来 String bookname = rs.getString("bookname"); String author = rs.getString("author"); float price = rs.getFloat("price"); int ID = rs.getInt("id"); Book book = new Book(ID,bookname,author,price); booklist.add(book); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { Database.close(conn, stmt, rs); } return booklist; } public boolean addBook(String bookname,String author,float price) { Connection conn = null; Statement stmt = null; try { conn = Database.getConnection(); stmt = conn.createStatement(); String sql = "insert into book(bookname,author,price) values('" 4000 +bookname+"','"+author+"',"+price+")"; //System.out.println(sql); stmt.execute(sql); return true; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } finally { Database.close(conn, stmt); } } public boolean deleteBook(int id,String bookname) { Connection conn = null; Statement stmt = null; try { conn = Database.getConnection(); stmt = conn.createStatement(); String sql; if(id != -1) { sql = "delete from book where id ="+id; } else { sql = "delete from book where bookname ='"+bookname+"'"; } stmt.execute(sql); return true; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } finally { Database.close(conn, stmt); } } public boolean changeBoo(int id,String bookname,String changename) { Connection conn = null; Statement stmt = null; try { conn = Database.getConnection(); stmt = conn.createStatement(); String sql; if (id != -1) { sql = "update book set bookname='"+changename+"'"+" where id="+id; //System.out.println(sql); } else { sql = "update book set bookname='"+changename+"'"+" where bookname='"+bookname+"'"; } stmt.execute(sql); return true; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } finally { Database.close(conn,stmt); } } public ArrayList<Book> findBoo(int id,String bookname,String author,String dimname,float minprice,float maxprice) { ArrayList<Book> booklist = new ArrayList<Book>(); Connection conn = null; Statement stmt = null; ResultSet rs = null; try { conn = Database.getConnection(); stmt = conn.createStatement(); String sql; if (id != -1) { sql = "select id,bookname,author,price from book"+" where id="+id; //System.out.println(sql); } else if(bookname != null) { sql = "select id,bookname,author,price from book"+" where bookname='"+bookname+"'"; } else if(author != null) { sql = "select id,bookname,author,price from book"+" where author='"+author+"'"; } else if(dimname != null) { sql = "select id,bookname,author,price from book"+" where bookname like'%"+dimname+"%'"; } else if(maxprice != 0) { sql = "select id,bookname,author,price from book where price>="+minprice+" and price<="+maxprice; } else { System.out.println("出现未知错误,请联系管理员!"); sql=""; } rs = stmt.executeQuery(sql); while(rs.next()){//如果对象中有数据,就会循环打印出来 String bookName = rs.getString("bookname"); String Author = rs.getString("author"); float Price = rs.getFloat("price"); int ID = rs.getInt("id"); Book book = new Book(ID,bookName,Author,Price); booklist.add(book); } /* if(rs.next()) { System.out.println("查找成功!您查找的结果为:\n"); do{//如果对象中有数据,就会循环打印出来 System.out.println("编号:"+rs.getInt("id")+" 书名:"+rs.getString("bookname")+",作者:"+rs.getString("author")+",价格:"+rs.getFloat("price")); }while(rs.next()); } else System.out.println("未查找到您想要的图书!"); */ } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { Database.close(conn, stmt,rs); } return booklist; } public ArrayList<Book> printAllbook() { ArrayList<Book> booklist = new ArrayList<Book>(); Connection conn = null; Statement stmt = null; ResultSet rs = null; //3.通过数据库的连接操作数据库,实现增删改查 try { conn = Database.getConnection(); stmt = conn.createStatement(); rs = stmt.executeQuery("select id,bookname,author,price from book");//选择import java.sql.ResultSet; while(rs.next()){//如果对象中有数据,就会循环打印出来 String bookName = rs.getString("bookname"); String Author = rs.getString("author"); float Price = rs.getFloat("price"); int ID = rs.getInt("id"); Book book = new Book(ID,bookName,Author,Price); booklist.add(book); } /* if(rs.next()) { do{//如果对象中有数据,就会循环打印出来 System.out.println("编号:"+rs.getInt("id")+" 书名:"+rs.getString("bookname")+",作者:"+rs.getString("author")+",价格:"+rs.getFloat("price")); }while(rs.next()); } else { System.out.println("图书库为空,请添加图书!"); } */ } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { Database.close(conn, stmt, rs); } return booklist; } public boolean clearBook() { Connection conn = null; Statement stmt = null; try { conn = Database.getConnection(); stmt = conn.createStatement(); String sql = "truncate table book"; stmt.execute(sql); return true; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } finally { Database.close(conn, stmt); } } }
MenuUI.java:
package ui; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import javax.swing.JLabel; import javax.swing.JButton; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class MenuUI extends JFrame { private JPanel contentPane; public static int choice; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { MenuUI frame = new MenuUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public MenuUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("欢迎..."); label.setBounds(145, 0, 81, 21); contentPane.add(label); JButton addButton = new JButton("增加图书"); addButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { AddUI addui = new AddUI(); addui.setVisible(true); MenuUI.this.dispose(); } }); addButton.setBounds(110, 25, 123, 29); contentPane.add(addButton); JButton deleteButton = new JButton("删除图书"); deleteButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { DeleteUI delete = new DeleteUI(); delete.setVisible(true); MenuUI.this.dispose(); } }); deleteButton.setBounds(110, 56, 123, 29); contentPane.add(deleteButton); JButton button_1 = new JButton("修改图书"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { ChangeUI change = new ChangeUI(); change.setVisible(true); MenuUI.this.dispose(); } }); button_1.setBounds(110, 90, 123, 29); contentPane.add(button_1); JButton button_2 = new JButton("查询图书"); button_2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { FindmenuUI findmenu = new FindmenuUI(); findmenu.setVisible(true); MenuUI.this.dispose(); } }); button_2.setBounds(110, 124, 123, 29); contentPane.add(button_2); JButton button_3 = new JButton("清空图书"); button_3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { ClearUI clear = new ClearUI(); clear.setVisible(true); MenuUI.this.dispose(); } }); button_3.setBounds(110, 157, 123, 29); contentPane.add(button_3); JButton button_4 = new JButton("退出系统"); button_4.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { MenuUI.this.dispose(); } }); button_4.setBounds(110, 189, 123, 29); contentPane.add(button_4); } }
AddUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import javax.swing.BoxLayout; import javax.swing.JLabel; import java.awt.FlowLayout; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.event.ActionListener; import java.io.IOException; import java.awt.event.ActionEvent; public class AddUI extends JFrame { private JPanel contentPane; private JTextField booknameText; private JTextField authorText; private JTextField priceText; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { AddUI frame = new AddUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public AddUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("请输入您要增加的图书:"); label.setBounds(105, 15, 211, 21); contentPane.add(label); JLabel label_1 = new JLabel("书名:"); label_1.setBounds(15, 50, 81, 21); contentPane.add(label_1); JLabel label_2 = new JLabel("作者:"); label_2.setBounds(15, 95, 81, 21); contentPane.add(label_2); JLabel label_3 = new JLabel("价格:"); label_3.setBounds(15, 137, 81, 21); contentPane.add(label_3); booknameText = new JTextField(); booknameText.setBounds(115, 51, 162, 27); contentPane.add(booknameText); booknameText.setColumns(10); authorText = new JTextField(); authorText.setColumns(10); authorText.setBounds(115, 92, 162, 27); contentPane.add(authorText); priceText = new JTextField(); priceText.setColumns(10); priceText.setBounds(115, 134, 162, 27); contentPane.add(priceText); JButton button = new JButton("\u63D0\u4EA4"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { try{ String choice = "增加"; String name = booknameText.getText(); String author = authorText.getText(); float price = Float.parseFloat(priceText.getText()); Operator operator = new Operator(); boolean isSuccess = operator.addBook(name, author, price); if(isSuccess) { Success success = new Success(choice); success.setVisible(true); AddUI.this.dispose(); } else { Error error = new Error(); error.setVisible(true); AddUI.this.dispose(); } }catch (Exception e){ Error error = new Error(); error.setVisible(true); AddUI.this.dispose(); } } }); button.setBounds(268, 182, 123, 29); contentPane.add(button); JButton button_1 = new JButton("\u8FD4\u56DE"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { MenuUI menu = new MenuUI(); menu.setVisible(true); AddUI.this.dispose(); } }); button_1.setBounds(37, 182, 123, 29); contentPane.add(button_1); } }
DeleteUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import javax.swing.JLabel; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class DeleteUI extends JFrame { private JPanel contentPane; private JTextField idText; private JTextField nameText; private JButton button; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { DeleteUI frame = new DeleteUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public DeleteUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("按编号删除:"); label.setBounds(24, 62, 124, 21); contentPane.add(label); idText = new JTextField(); idText.setBounds(163, 59, 96, 27); contentPane.add(idText); idText.setColumns(10); JLabel label_1 = new JLabel("或按书名删除:"); label_1.setBounds(15, 104, 124, 21); contentPane.add(label_1); nameText = new JTextField(); nameText.setBounds(163, 101, 96, 27); contentPane.add(nameText); nameText.setColumns(10); JButton submitButton = new JButton("\u63D0\u4EA4"); submitButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { int id = -1; String name = ""; String choice = "删除"; try{ id = Integer.parseInt(idText.getText()); System.out.println(id); Operator operator = new Operator(); boolean isSuccess = operator.deleteBook(id,name); if(isSuccess) { System.out.println("id删除成功!"); Success success = new Success(choice); success.setVisible(true); DeleteUI.this.dispose(); } else { System.out.println("id删除失败!请检查您输入的是否正确!"); Error error = new Error(); error.setVisible(true); DeleteUI.this.dispose(); } }catch (Exception e){ name = nameText.getText(); if(name.trim().equals("")) { Error error = new Error(); error.setVisible(true); DeleteUI.this.dispose(); } else { System.out.println(name); Operator operator = new Operator(); boolean isSuccess = operator.deleteBook(id,name); if(isSuccess) { System.out.println("name删除成功!"); Success success = new Success(choice); success.setVisible(true); DeleteUI.this.dispose(); } else { System.out.println("name删除失败!请检查您输入的是否正确!"); Error error = new Error(); error.setVisible(true); DeleteUI.this.dispose(); } } } } }); submitButton.setBounds(257, 143, 123, 29); contentPane.add(submitButton); button = new JButton("\u8FD4\u56DE"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { MenuUI menu = new MenuUI(); menu.setVisible(true); DeleteUI.this.dispose(); } }); button.setBounds(28, 143, 123, 29); contentPane.add(button); JLabel label_2 = new JLabel("\u8BF7\u8F93\u5165\u5176\u4E2D\u4E4B\u4E00"); label_2.setBounds(144, 15, 126, 21); contentPane.add(label_2); } }
ChangeUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import javax.swing.JLabel; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class ChangeUI extends JFrame { private JPanel contentPane; private JTextField idText; private JTextField changeText; private JButton button_1; private JLabel label_2; private JTextField nameText; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { ChangeUI frame = new ChangeUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public ChangeUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 1124c 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("请输入您要修改的书的编号:"); label.setBounds(15, 15, 243, 21); contentPane.add(label); idText = new JTextField(); idText.setBounds(249, 12, 62, 27); contentPane.add(idText); idText.setColumns(10); changeText = new JTextField(); changeText.setBounds(249, 115, 96, 27); contentPane.add(changeText); changeText.setColumns(10); JButton button = new JButton("提交"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { String choice = "修改"; int id = -1; String name = ""; String change = changeText.getText(); Operator operator = new Operator(); if(change.equals("")) { Error error = new Error(); error.setVisible(true); ChangeUI.this.dispose(); } else { try{ id = Integer.parseInt(idText.getText()); System.out.println(id+" "+change); boolean isSuccess = operator.changeBoo(id,name,change); if(isSuccess) { System.out.println("修改成功!"); Success success = new Success(choice); success.setVisible(true); ChangeUI.this.dispose(); } else { System.out.println("修改失败!"); Error error = new Error(); error.setVisible(true); ChangeUI.this.dispose(); } }catch (Exception e){ name = nameText.getText(); System.out.println(name+" "+change); boolean isSuccess = operator.changeBoo(id,name,change); if(isSuccess) { System.out.println("修改成功!"); Success success = new Success(choice); success.setVisible(true); ChangeUI.this.dispose(); } else { System.out.println("修改失败!"); Error error = new Error(); error.setVisible(true); ChangeUI.this.dispose(); } } } } }); button.setBounds(279, 200, 123, 29); contentPane.add(button); button_1 = new JButton("\u8FD4\u56DE"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { MenuUI menu = new MenuUI(); menu.setVisible(true); ChangeUI.this.dispose(); } }); button_1.setBounds(15, 200, 123, 29); contentPane.add(button_1); label_2 = new JLabel("\u6216\u4E66\u540D"); label_2.setBounds(177, 52, 81, 21); contentPane.add(label_2); nameText = new JTextField(); nameText.setColumns(10); nameText.setBounds(249, 49, 62, 27); contentPane.add(nameText); JLabel label_1 = new JLabel("\u8BF7\u8F93\u5165\u60A8\u8981\u4FEE\u6539\u4E3A\u4EC0\u4E48\u4E66\u540D\uFF1A"); label_1.setBounds(15, 118, 266, 21); contentPane.add(label_1); } }
FindmenuUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import javax.swing.JLabel; import javax.swing.JButton; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class FindmenuUI extends JFrame { private JPanel contentPane; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { FindmenuUI frame = new FindmenuUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public FindmenuUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("\u8BF7\u9009\u62E9\u60A8\u8981\u5982\u4F55\u67E5\u627E\u56FE\u4E66\uFF1A"); label.setBounds(94, 33, 216, 21); contentPane.add(label); JButton idButton = new JButton("编号"); idButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { IDfindUI menu = new IDfindUI(); menu.setVisible(true); FindmenuUI.this.dispose(); } }); idButton.setBounds(134, 60, 107, 29); contentPane.add(idButton); JButton button = new JButton("书名"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { NameFindUI menu = new NameFindUI(); menu.setVisible(true); FindmenuUI.this.dispose(); } }); button.setBounds(134, 92, 107, 29); contentPane.add(button); JButton button_1 = new JButton("作者"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { AuthorFindUI menu = new AuthorFindUI(); menu.setVisible(true); FindmenuUI.this.dispose(); } }); button_1.setBounds(134, 126, 107, 29); contentPane.add(button_1); JButton button_3 = new JButton("价格"); button_3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { PriceFindUI menu = new PriceFindUI(); menu.setVisible(true); FindmenuUI.this.dispose(); } }); button_3.setBounds(134, 159, 107, 29); contentPane.add(button_3); JButton button_2 = new JButton("\u8FD4\u56DE"); button_2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { MenuUI menu = new MenuUI(); menu.setVisible(true); FindmenuUI.this.dispose(); } }); button_2.setBounds(134, 189, 107, 29); contentPane.add(button_2); } }
IDfindUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import model.Book; import javax.swing.JLabel; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.event.ActionListener; import java.util.ArrayList; import java.awt.event.ActionEvent; public class IDfindUI extends JFrame { private JPanel contentPane; private JTextField idText; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { IDfindUI frame = new IDfindUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public IDfindUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("\u8BF7\u8F93\u5165\u60A8\u8981\u67E5\u627E\u7684\u7F16\u53F7:"); label.setBounds(15, 71, 210, 21); contentPane.add(label); idText = new JTextField(); idText.setBounds(224, 68, 96, 27); contentPane.add(idText); idText.setColumns(10); JButton button = new JButton("\u63D0\u4EA4"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { String name = null; int id = -1; String author = null; String dimname = null; float minprice = 0; float maxprice = -1; Operator operator = new Operator(); try{ id = Integer.parseInt(idText.getText()); ArrayList<Book> booklist = operator.findBoo(id,name,author,dimname,minprice,maxprice); PrintUI menu = new PrintUI(booklist); menu.setVisible(true); IDfindUI.this.dispose(); }catch (Exception e){ Error error = new Error(); error.setVisible(true); IDfindUI.this.dispose(); } } }); button.setBounds(267, 167, 123, 29); contentPane.add(button); JButton button_1 = new JButton("返回"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { FindmenuUI menu = new FindmenuUI(); menu.setVisible(true); IDfindUI.this.dispose(); } }); button_1.setBounds(27, 167, 123, 29); contentPane.add(button_1); } }
NameFindUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import model.Book; import javax.swing.JLabel; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.event.ActionListener; import java.util.ArrayList; import java.awt.event.ActionEvent; public class NameFindUI extends JFrame { private JPanel contentPane; private JTextField nameText; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { NameFindUI frame = new NameFindUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public NameFindUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("\u8BF7\u8F93\u5165\u60A8\u8981\u67E5\u627E\u7684\u4E66\u540D\uFF1A"); label.setBounds(78, 53, 227, 21); contentPane.add(label); nameText = new JTextField(); nameText.setBounds(88, 90, 170, 27); contentPane.add(nameText); nameText.setColumns(10); JButton button = new JButton("\u6A21\u7CCA\u67E5\u627E"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String name = null; int id = -1; String author = null; String dimname = null; float minprice = 0; float maxprice = -1; Operator operator = new Operator(); dimname = nameText.getText(); if (dimname.equals("")) { Error error = new Error(); error.setVisible(true); NameFindUI.this.dispose(); } else { ArrayList<Book> booklist = operator.findBoo(id,name,author,dimname,minprice,maxprice); PrintUI menu = new PrintUI(booklist); menu.setVisible(true); NameFindUI.this.dispose(); } } }); button.setBounds(241, 176, 123, 29); contentPane.add(button); JButton button_1 = new JButton("\u7CBE\u786E\u67E5\u627E"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { String name = null; int id = -1; String author = null; String dimname = null; float minprice = 0; float maxprice = -1; Operator operator = new Operator(); name = nameText.getText(); if (name.equals("")) { Error error = new Error(); error.setVisible(true); NameFindUI.this.dispose(); } else { ArrayList<Book> booklist = operator.findBoo(id,name,author,dimname,minprice,maxprice); PrintUI menu = new PrintUI(booklist); menu.setVisible(true); NameFindUI.this.dispose(); } } }); button_1.setBounds(241, 132, 123, 29); contentPane.add(button_1); JButton button_2 = new JButton("\u8FD4\u56DE"); button_2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { FindmenuUI menu = new FindmenuUI(); menu.setVisible(true); NameFindUI.this.dispose(); } }); button_2.setBounds(26, 176, 123, 29); contentPane.add(button_2); } }
AuthorFindUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import model.Book; import javax.swing.JLabel; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.event.ActionListener; import java.util.ArrayList; import java.awt.event.ActionEvent; public class AuthorFindUI extends JFrame { private JPanel contentPane; private JTextField authorText; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { AuthorFindUI frame = new AuthorFindUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public AuthorFindUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("\u8BF7\u8F93\u5165\u60A8\u8981\u67E5\u627E\u7684\u4F5C\u8005\uFF1A"); label.setBounds(15, 48, 212, 21); contentPane.add(label); authorText = new JTextField(); authorText.setBounds(226, 45, 124, 27); contentPane.add(authorText); authorText.setColumns(10); JButton button = new JButton("\u63D0\u4EA4"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { String name = null; int id = -1; String author = null; String dimname = null; float minprice = 0; float maxprice = -1; Operator operator = new Operator(); author = authorText.getText(); if (author.equals("")) { Error error = new Error(); error.setVisible(true); AuthorFindUI.this.dispose(); } else { ArrayList<Book> booklist = operator.findBoo(id,name,author,dimname,minprice,maxprice); PrintUI menu = new PrintUI(booklist); menu.setVisible(true); AuthorFindUI.this.dispose(); } } }); button.setBounds(278, 158, 123, 29); contentPane.add(button); JButton button_1 = new JButton("\u8FD4\u56DE"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { FindmenuUI menu = new FindmenuUI(); menu.setVisible(true); AuthorFindUI.this.dispose(); } }); button_1.setBounds(40, 158, 123, 29); contentPane.add(button_1); } }
PriceFindUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import model.Book; import javax.swing.JLabel; import javax.swing.JTextField; import javax.swing.JButton; import java.awt.event.ActionListener; import java.util.ArrayList; import java.awt.event.ActionEvent; public class PriceFindUI extends JFrame { private JPanel contentPane; private JTextField minpriceText; private JTextField maxpriceText; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { PriceFindUI frame = new PriceFindUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public PriceFindUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("\u8BF7\u8F93\u5165\u60A8\u8981\u67E5\u627E\u7684\u4EF7\u683C\u533A\u95F4\uFF1A"); label.setBounds(50, 28, 274, 21); contentPane.add(label); minpriceText = new JTextField(); minpriceText.setBounds(36, 64, 96, 27); contentPane.add(minpriceText); minpriceText.setColumns(10); maxpriceText = new JTextField(); maxpriceText.setColumns(10); maxpriceText.setBounds(217, 64, 96, 27); contentPane.add(maxpriceText); JLabel label_1 = new JLabel("\u81F3"); label_1.setBounds(160, 67, 81, 21); contentPane.add(label_1); JButton button = new JButton("\u63D0\u4EA4"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { String name = null; int id = -1; String author = null; String dimname = null; float minprice = 0; float maxprice = -1; Operator operator = new Operator(); try{ minprice = Float.parseFloat(minpriceText.getText()); maxprice = Float.parseFloat(maxpriceText.getText()); ArrayList<Book> booklist = operator.findBoo(id,name,author,dimname,minprice,maxprice); PrintUI menu = new PrintUI(booklist); menu.setVisible(true); PriceFindUI.this.dispose(); }catch (Exception e){ Error error = new Error(); error.setVisible(true); PriceFindUI.this.dispose(); } } }); button.setBounds(245, 156, 123, 29); contentPane.add(button); JButton button_1 = new JButton("\u8FD4\u56DE"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { FindmenuUI menu = new FindmenuUI(); menu.setVisible(true); PriceFindUI.this.dispose(); } }); button_1.setBounds(15, 156, 123, 29); contentPane.add(button_1); } }
Success.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import model.Book; import javax.swing.JLabel; import javax.swing.JButton; import java.awt.event.ActionListener; import java.util.ArrayList; import java.awt.event.ActionEvent; public class Success extends JFrame { private JPanel contentPane; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Success frame = new Success("haha"); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public Success(String choice) { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel(choice+"成功!"); label.setBounds(152, 69, 130, 21); contentPane.add(label); JButton button = new JButton("\u8FD4\u56DE\u83DC\u5355"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { MenuUI menu = new MenuUI(); menu.setVisible(true); Success.this.dispose(); } }); button.setBounds(31, 142, 130, 29); contentPane.add(button); JButton button_1 = new JButton("\u67E5\u770B\u6240\u6709\u56FE\u4E66"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { Operator operator = new Operator(); ArrayList<Book> booklist = operator.printAllbook(); PrintUI menu = new PrintUI(booklist); menu.setVisible(true); Success.this.dispose(); } }); button_1.setBounds(219, 142, 141, 29); contentPane.add(button_1); } }
Error.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import javax.swing.JLabel; import javax.swing.JButton; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class Error extends JFrame { private JPanel contentPane; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { Error frame = new Error(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public Error() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("\u64CD\u4F5C\u5931\u8D25\uFF01"); label.setBounds(151, 67, 110, 21); contentPane.add(label); JButton button = new JButton("\u8FD4\u56DE\u4E3B\u83DC\u5355"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { MenuUI menu = new MenuUI(); menu.setVisible(true); Error.this.dispose(); } }); button.setBounds(246, 168, 123, 29); contentPane.add(button); } }
PrintUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.border.EmptyBorder; import javax.swing.JTable; import javax.swing.table.DefaultTableModel; import model.Book; import javax.swing.JButton; import java.awt.event.ActionListener; import java.util.ArrayList; import java.awt.event.ActionEvent; public class PrintUI extends JFrame { private JPanel contentPane; private JTable table; private JButton button; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { ArrayList<Book> booklist = null; PrintUI frame = new PrintUI(booklist); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public PrintUI(ArrayList<Book> booklist) { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); int high = booklist.size(); Object[][] obj = new Object[high][4]; for (int j = 0; j < booklist.size(); j++) { Book book = (Book)booklist.get(j); System.out.println("编号"+book.getBookid()+" 书名:"+book.getBookname()+" 作者:"+book.getAuthor()+" 单价:"+book.getPrice()+"元/本"); obj[j][0] = Integer.toString(book.getBookid()); obj[j][1] = book.getBookname(); obj[j][2] = book.getAuthor(); obj[j][3] = book.getPrice() + ""; } table = new JTable(); table.setModel(new DefaultTableModel( obj, new String[] { "\u7F16\u53F7", "\u4E66\u540D", "\u4F5C\u8005", "\u4EF7\u683C" } )); table.setBounds(54, 211, 306, -186); JScrollPane scroll = new JScrollPane(table); scroll.setLocation(0, 0); scroll.setSize(428,208); contentPane.add(scroll); button = new JButton("\u8FD4\u56DE\u4E3B\u83DC\u5355"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { MenuUI menu = new MenuUI(); menu.setVisible(true); PrintUI.this.dispose(); } }); button.setBounds(271, 215, 123, 29); contentPane.add(button); this.setVisible(true); } }
ClearUI.java:
package ui; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import control.Operator; import javax.swing.JLabel; import javax.swing.JButton; import javax.swing.JTextField; import javax.swing.JPasswordField; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class ClearUI extends JFrame { private JPanel contentPane; private JPasswordField keyText; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { ClearUI frame = new ClearUI(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public ClearUI() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel label = new JLabel("\u8BF7\u8F93\u5165\u6E05\u7A7A\u5BC6\u7801\uFF1A"); label.setBounds(41, 70, 155, 21); contentPane.add(label); keyText = new JPasswordField(); keyText.setBounds(180, 67, 137, 27); contentPane.add(keyText); JButton button = new JButton("\u63D0\u4EA4"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try{ int key = Integer.parseInt(keyText.getText()); if(key == Operator.clearKey) { Operator operator = new Operator(); boolean isSuccess = operator.clearBook(); String choice = "清空"; if(isSuccess) { System.out.println("清空成功!"); Success success = new Success(choice); success.setVisible(true); ClearUI.this.dispose(); } else { System.out.println("清空失败!"); Error error = new Error(); error.setVisible(true); ClearUI.this.dispose(); } } else { System.out.println("您没有权限执行此操作!"); Error error = new Error(); error.setVisible(true); ClearUI.this.dispose(); } }catch (Exception f){ Error error = new Error(); error.setVisible(true); ClearUI.this.dispose(); } } }); button.setBounds(277, 166, 123, 29); contentPane.add(button); JButton button_1 = new JButton("\u8FD4\u56DE"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { MenuUI menu = new MenuUI(); menu.setVisible(true); ClearUI.this.dispose(); } }); button_1.setBounds(41, 166, 123, 29); contentPane.add(button_1); } }
代码比较多,不过主要是界面的代码,后面会陆续更新发到github上...
请期待下一篇:Java入门教程之图书管理系统(由简入繁)(八)
转载请注明出处:http://blog.csdn.net/alextan_/article/details/70272804
相关文章推荐
- Java入门教程之图书管理系统(由简入繁)(六)
- Java入门教程之图书管理系统(由简入繁)(九)
- Java入门教程之图书管理系统(由简入繁)(五)
- Java入门教程之图书管理系统(由简入繁)(四)
- Java入门教程之图书管理系统(由简入繁)(八)
- Java入门教程之图书管理系统(由简入繁)(二)
- Java入门教程之图书管理系统(由简入繁)(三)
- Java入门教程之图书管理系统(由简入繁)(一)
- java-图书管理系统
- Java图书管理系统总结分享
- Extjs5.0从入门到实战开发信息管理系统视频教程
- java web 项目 图书管理系统的设计与实现
- Extjs视频教程_Extjs5.0从入门到实战开发信息管理系统
- 图书管理系统基于JAVA
- Extjs视频教程_Extjs5.0从入门到实战开发信息管理系统
- 数据结构(JAVA版本)练习之集合 简易图书管理系统
- Extjs视频教程_Extjs5.0从入门到实战开发信息管理系统
- C# 实现一个简单的图书管理系统(无数据库)新手教程1
- Extjs视频教程_Extjs5.0从入门到实战开发信息管理系统
- javaweb开发之---在线图书管理系统