本篇文章主要介绍了"Java之------单机版书店管理系统设计思想和设计模式系列二用户模块",主要涉及到书店管理系统,java方面的内容,对于Javajrs看球网直播吧_低调看直播体育app软件下载_低调看体育直播感兴趣的同学可以参考一下:
书店管理系统书店管理系统可以说是设计模式及设计思想的一个比较经典的例子。本系列将分为多个部分讲述此输电管理系统。书店管理系统将分为:用户、图书、进货、销售和库存...
书店管理系统
书店管理系统可以说是设计模式及设计思想的一个比较经典的例子。
本系列将分为多个部分讲述此输电管理系统。
书店管理系统将分为:用户、图书、进货、销售和库存五个模块,另外还有公共包、工具包和登录包,另外还有一个框架。
对于分层设计,都是表现层可以调用逻辑层,逻辑层调用数据层,数据层调用工具和公共包,方向不可打乱,必须严格按照这种模式。
本篇将做用户模块部分。
如前面所言,用户模块分为了数据层、业务逻辑层、表现层和值对象层
数据层和逻辑层又分了接口、实现和工厂三个包,里面分别存放接口、实现类和工厂类
表现层写的则是图形界面的文件
本系列所有的表现层界面全部都用面板写,因此需要有一个JFrame来承载,在这里写掉JFrame,后面的图形界面都用这个。
框架:
[java] view
plain copy 

- /*
- * BookStore.java
- *
- * Created on __DATE__, __TIME__
- */
-
- package cn.hncu;
-
- import java.awt.event.ActionEvent;
-
- import javax.swing.Icon;
- import javax.swing.ImageIcon;
- import javax.swing.JLabel;
- import javax.swing.JPanel;
-
- import cn.hncu.book.ui.BookListPanel;
- import cn.hncu.login.ui.LoginPanel;
- import cn.hncu.out.ui.ListPanel;
- import cn.hncu.user.ui.UserListPanel;
-
- /**
- *
- * @author __USER__
- */
- public class BookStore extends javax.swing.JFrame {
- private final String dir = "./Images/";
-
- /** Creates new form BookStore */
- public BookStore() {
- setBack();
- initComponents();
- this.setContentPane(new LoginPanel(this));
- this.validate();
- }
-
- private void setBack() {
- //把当前JFrame的内容窗格设成透明,这样放在其中的组件就能够显示出背景
- ((JPanel) (this.getContentPane())).setOpaque(false);//1
-
- Icon bgImage = new ImageIcon(dir + "bg.png");//路径从项目根目录
- //Icon bgImage = new ImageIcon(dir+"a.gif");//显示gif动态图也可以
- JLabel bgLabel = new JLabel(bgImage);
- //根据给的整数值决定在上层还是下层显示,数值越小显示在越下面的位置
- this.getLayeredPane().add(bgLabel, new Integer(Integer.MIN_VALUE));//2
- bgLabel
- .setBounds(0, 0, bgImage.getIconWidth(), bgImage
- .getIconHeight());//3
-
- //以下是测试,看看上面的图片是不是能够显示成背景
- // JButton btn = new JButton("OK");
- // this.getLayeredPane().add(btn);
- // btn.setBounds(100, 100, 80, 50);
- }
-
- /** This method is called from within the constructor to
- * initialize the form.
- * WARNING: Do NOT modify this code. The content of this method is
- * always regenerated by the Form Editor.
- */
- //GEN-BEGIN:initComponents
- //
- private void initComponents() {
-
- menuBar = new javax.swing.JMenuBar();
- fileMenu = new javax.swing.JMenu();
- openMenuItem = new javax.swing.JMenuItem();
- saveMenuItem = new javax.swing.JMenuItem();
- saveAsMenuItem = new javax.swing.JMenuItem();
- exitMenuItem = new javax.swing.JMenuItem();
- editMenu = new javax.swing.JMenu();
- cutMenuItem = new javax.swing.JMenuItem();
- copyMenuItem = new javax.swing.JMenuItem();
- pasteMenuItem = new javax.swing.JMenuItem();
- deleteMenuItem = new javax.swing.JMenuItem();
- jMenu1 = new javax.swing.JMenu();
- jMenuItemUser = new javax.swing.JMenuItem();
- jMenuItemBook = new javax.swing.JMenuItem();
- jMenuItemIn = new javax.swing.JMenuItem();
- jMenuItemOut = new javax.swing.JMenuItem();
- jMenuItemStock = new javax.swing.JMenuItem();
- jMenuItemLogout = new javax.swing.JMenuItem();
- helpMenu = new javax.swing.JMenu();
- contentsMenuItem = new javax.swing.JMenuItem();
- aboutMenuItem = new javax.swing.JMenuItem();
-
- setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
- setMinimumSize(new java.awt.Dimension(800, 600));
- getContentPane().setLayout(null);
-
- fileMenu.setText("File");
-
- openMenuItem.setText("Open");
- fileMenu.add(openMenuItem);
-
- saveMenuItem.setText("Save");
- fileMenu.add(saveMenuItem);
-
- saveAsMenuItem.setText("Save As ...");
- fileMenu.add(saveAsMenuItem);
-
- exitMenuItem.setText("Exit");
- exitMenuItem.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- exitMenuItemActionPerformed(evt);
- }
- });
- fileMenu.add(exitMenuItem);
-
- menuBar.add(fileMenu);
-
- editMenu.setText("Edit");
-
- cutMenuItem.setText("Cut");
- editMenu.add(cutMenuItem);
-
- copyMenuItem.setText("Copy");
- editMenu.add(copyMenuItem);
-
- pasteMenuItem.setText("Paste");
- editMenu.add(pasteMenuItem);
-
- deleteMenuItem.setText("Delete");
- editMenu.add(deleteMenuItem);
-
- menuBar.add(editMenu);
-
- jMenu1.setText("Patterns");
-
- jMenuItemUser.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
- java.awt.event.KeyEvent.VK_U,
- java.awt.event.InputEvent.CTRL_MASK));
- jMenuItemUser.setText("user");
- jMenuItemUser.setEnabled(false);
- jMenuItemUser.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jMenuItemUserActionPerformed(evt);
- }
- });
- jMenu1.add(jMenuItemUser);
-
- jMenuItemBook.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
- java.awt.event.KeyEvent.VK_B,
- java.awt.event.InputEvent.CTRL_MASK));
- jMenuItemBook.setText("book");
- jMenuItemBook.setEnabled(false);
- jMenuItemBook.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jMenuItemBookActionPerformed(evt);
- }
- });
- jMenu1.add(jMenuItemBook);
-
- jMenuItemIn.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
- java.awt.event.KeyEvent.VK_I,
- java.awt.event.InputEvent.CTRL_MASK));
- jMenuItemIn.setText("in");
- jMenuItemIn.setEnabled(false);
- jMenuItemIn.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jMenuItemInActionPerformed(evt);
- }
- });
- jMenu1.add(jMenuItemIn);
-
- jMenuItemOut.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
- java.awt.event.KeyEvent.VK_O,
- java.awt.event.InputEvent.CTRL_MASK));
- jMenuItemOut.setText("out");
- jMenuItemOut.setEnabled(false);
- jMenuItemOut.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jMenuItemOutActionPerformed(evt);
- }
- });
- jMenu1.add(jMenuItemOut);
-
- jMenuItemStock.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
- java.awt.event.KeyEvent.VK_S,
- java.awt.event.InputEvent.CTRL_MASK));
- jMenuItemStock.setText("stock");
- jMenuItemStock.setEnabled(false);
- jMenuItemStock.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jMenuItemStockActionPerformed(evt);
- }
- });
- jMenu1.add(jMenuItemStock);
-
- jMenuItemLogout.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
- java.awt.event.KeyEvent.VK_L,
- java.awt.event.InputEvent.CTRL_MASK));
- jMenuItemLogout.setText("logout");
- jMenuItemLogout.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- jMenuItemLogoutActionPerformed(evt);
- }
- });
- jMenu1.add(jMenuItemLogout);
-
- menuBar.add(jMenu1);
-
- helpMenu.setText("Help");
-
- contentsMenuItem.setText("Contents");
- helpMenu.add(contentsMenuItem);
-
- aboutMenuItem.setText("About");
- helpMenu.add(aboutMenuItem);
-
- menuBar.add(helpMenu);
-
- setJMenuBar(menuBar);
-
- pack();
- }//
- //GEN-END:initComponents
-
- private void jMenuItemLogoutActionPerformed(java.awt.event.ActionEvent evt) {
- jMenuItemUser.setEnabled(false);
- jMenuItemBook.setEnabled(false);
- jMenuItemIn.setEnabled(false);
- jMenuItemOut.setEnabled(false);
- jMenuItemStock.setEnabled(false);
-
- this.setContentPane(new LoginPanel(this));
- this.validate();
- }
-
- public javax.swing.JMenuItem getjMenuItemBook() {
- return jMenuItemBook;
- }
-
- public javax.swing.JMenuItem getjMenuItemIn() {
- return jMenuItemIn;
- }
-
- public javax.swing.JMenuItem getjMenuItemOut() {
- return jMenuItemOut;
- }
-
- public javax.swing.JMenuItem getjMenuItemStock() {
- return jMenuItemStock;
- }
-
- public javax.swing.JMenuItem getjMenuItemUser() {
- return jMenuItemUser;
- }
-
- private void jMenuItemStockActionPerformed(java.awt.event.ActionEvent evt) {
- this.setContentPane(new cn.hncu.stock.ui.ListPanel(this));
- this.validate();
- }
-
- private void jMenuItemOutActionPerformed(java.awt.event.ActionEvent evt) {
- this.setContentPane(new ListPanel(this));
- this.validate();
- }
-
- private void jMenuItemInActionPerformed(java.awt.event.ActionEvent evt) {
- this.setContentPane(new cn.hncu.in.ui.ListPanel(this));
- this.validate();
- }
-
- protected void jMenuItemUserActionPerformed(ActionEvent evt) {
- this.setContentPane(new UserListPanel(this));
- this.validate();
-
- }
-
- private void jMenuItemBookActionPerformed(java.awt.event.ActionEvent evt) {
- this.setContentPane(new BookListPanel(this));
- this.validate();
- }
-
- private void exitMenuItemActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_exitMenuItemActionPerformed
- System.exit(0);
- }//GEN-LAST:event_exitMenuItemActionPerformed
-
- /**
- * @param args the command line arguments
- */
- public static void main(String args[]) {
- java.awt.EventQueue.invokeLater(new Runnable() {
- public void run() {
- new BookStore().setVisible(true);
- }
- });
- }
-
- //GEN-BEGIN:variables
- // Variables declaration - do not modify
- private javax.swing.JMenuItem aboutMenuItem;
- private javax.swing.JMenuItem contentsMenuItem;
- private javax.swing.JMenuItem copyMenuItem;
- private javax.swing.JMenuItem cutMenuItem;
- private javax.swing.JMenuItem deleteMenuItem;
- private javax.swing.JMenu editMenu;
- private javax.swing.JMenuItem exitMenuItem;
- private javax.swing.JMenu fileMenu;
- private javax.swing.JMenu helpMenu;
- private javax.swing.JMenu jMenu1;
- private javax.swing.JMenuItem jMenuItemBook;
- private javax.swing.JMenuItem jMenuItemIn;
- private javax.swing.JMenuItem jMenuItemLogout;
- private javax.swing.JMenuItem jMenuItemOut;
- private javax.swing.JMenuItem jMenuItemStock;
- private javax.swing.JMenuItem jMenuItemUser;
- private javax.swing.JMenuBar menuBar;
- private javax.swing.JMenuItem openMenuItem;
- private javax.swing.JMenuItem pasteMenuItem;
- private javax.swing.JMenuItem saveAsMenuItem;
- private javax.swing.JMenuItem saveMenuItem;
- // End of variables declaration//GEN-END:variables
-
- }
数据层:
1、接口
[java] view
plain copy 
