最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java設(shè)計(jì)模塊系列之書店管理系統(tǒng)單機(jī)版(三)

 更新時(shí)間:2016年08月23日 16:00:51   作者:qq_26525215  
這篇文章主要為大家詳細(xì)介紹了Java單機(jī)版的書店管理系統(tǒng)設(shè)計(jì)模塊和思想第三章,感興趣的小伙伴們可以參考一下

介紹

今天對(duì)系列二的一個(gè)添加用戶的輸入小bug進(jìn)行了解決, 增加了用戶模塊的,刪除用戶,和修改用戶模塊。

下面的代碼是相對(duì)于系列二來說進(jìn)行了修改或者是增加的類.

先看AddPanel類的修改:
在收集參數(shù)的時(shí)候進(jìn)行防范就可防止那個(gè)bug了。

cn.hncu.bookStore.user.ui;

AddPanel類:(添加用戶模塊)

/*
 * AddPanel.java
 *
 * Created on __DATE__, __TIME__
 */

package cn.hncu.bookStore.user.ui;

import javax.swing.JFrame;
import javax.swing.JOptionPane;

import cn.hncu.bookStore.common.UserTypeEnum;
import cn.hncu.bookStore.user.business.ebi.UserEbi;
import cn.hncu.bookStore.user.business.factory.UserEbiFactory;
import cn.hncu.bookStore.user.vo.UserModel;
import cn.hncu.bookStore.util.FileIoUtil;

/**
 *
 * @author 陳浩翔
 */
public class AddPanel extends javax.swing.JPanel {
 private JFrame mainFrame = null;

 /** Creates new form AddPanel */
 public AddPanel(JFrame mainFrame) {
  this.mainFrame = mainFrame;
  initComponents();
  myInitData();
 }

 private void myInitData() {
  for (UserTypeEnum type : UserTypeEnum.values()) {
   combType.addItem(type.getName());
  }
 }

 /** 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
 // <editor-fold defaultstate="collapsed" desc="Generated Code">
 private void initComponents() {

  jLabel1 = new javax.swing.JLabel();
  jLabel2 = new javax.swing.JLabel();
  tfdName = new javax.swing.JTextField();
  jLabel3 = new javax.swing.JLabel();
  tfdUuid = new javax.swing.JTextField();
  jLabel4 = new javax.swing.JLabel();
  tfdPwd2 = new javax.swing.JPasswordField();
  jLabel5 = new javax.swing.JLabel();
  jLabel6 = new javax.swing.JLabel();
  combType = new javax.swing.JComboBox();
  tfdPwd = new javax.swing.JPasswordField();
  btnAdd = new javax.swing.JButton();
  btnBack = new javax.swing.JButton();

  setMinimumSize(new java.awt.Dimension(800, 600));
  setLayout(null);

  jLabel1.setFont(new java.awt.Font("微軟雅黑", 1, 48));
  jLabel1.setForeground(new java.awt.Color(204, 0, 0));
  jLabel1.setText("\u6dfb\u52a0\u7528\u6237");
  add(jLabel1);
  jLabel1.setBounds(330, 30, 230, 80);

  jLabel2.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel2.setText("\u7528\u6237\u7c7b\u578b:");
  add(jLabel2);
  jLabel2.setBounds(90, 310, 90, 30);

  tfdName.setFont(new java.awt.Font("Dialog", 1, 18));
  tfdName.setAutoscrolls(false);
  add(tfdName);
  tfdName.setBounds(470, 160, 120, 30);

  jLabel3.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel3.setText("uuid:");
  add(jLabel3);
  jLabel3.setBounds(120, 160, 50, 30);

  tfdUuid.setFont(new java.awt.Font("Dialog", 1, 12));
  add(tfdUuid);
  tfdUuid.setBounds(190, 160, 110, 30);

  jLabel4.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel4.setText("\u59d3\u540d:");
  add(jLabel4);
  jLabel4.setBounds(410, 160, 50, 30);

  tfdPwd2.setFont(new java.awt.Font("宋體", 1, 18));
  add(tfdPwd2);
  tfdPwd2.setBounds(470, 240, 170, 30);

  jLabel5.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel5.setText("\u5bc6\u7801:");
  add(jLabel5);
  jLabel5.setBounds(120, 240, 50, 30);

  jLabel6.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel6.setText("\u786e\u8ba4\u5bc6\u7801:");
  add(jLabel6);
  jLabel6.setBounds(380, 240, 90, 30);

  combType.setFont(new java.awt.Font("Dialog", 1, 18));
  combType.setForeground(new java.awt.Color(51, 51, 255));
  combType.setModel(new javax.swing.DefaultComboBoxModel(
    new String[] { "請(qǐng)選擇..." }));
  add(combType);
  combType.setBounds(190, 310, 160, 30);

  tfdPwd.setFont(new java.awt.Font("宋體", 1, 18));
  add(tfdPwd);
  tfdPwd.setBounds(190, 240, 160, 30);

  btnAdd.setFont(new java.awt.Font("Dialog", 1, 24));
  btnAdd.setForeground(new java.awt.Color(0, 204, 204));
  btnAdd.setText("\u6dfb\u52a0");
  btnAdd.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnAddActionPerformed(evt);
   }
  });
  add(btnAdd);
  btnAdd.setBounds(190, 430, 120, 60);

  btnBack.setFont(new java.awt.Font("Dialog", 1, 24));
  btnBack.setForeground(new java.awt.Color(0, 204, 204));
  btnBack.setText("\u8fd4\u56de");
  btnBack.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnBackActionPerformed(evt);
   }
  });
  add(btnBack);
  btnBack.setBounds(520, 430, 120, 60);
 }// </editor-fold>
 //GEN-END:initComponents

 private void back() {
  mainFrame.setContentPane(new ListPanel(mainFrame));
  mainFrame.validate();
 }

 /**
  *監(jiān)聽返回按鈕
  * @param 返回按鈕的點(diǎn)擊監(jiān)聽
  */
 private void btnBackActionPerformed(java.awt.event.ActionEvent evt) {
  back();
 }

 private void btnAddActionPerformed(java.awt.event.ActionEvent evt) {
  //1收集參數(shù)
  String uuid = tfdUuid.getText();
  String name = tfdName.getText();
  String pwd = new String(tfdPwd.getPassword());
  String pwd2 = new String(tfdPwd2.getPassword());
  //System.out.println(uuid);

  //System.out.println(uuid+","+name+","+pwd);
  if (uuid.equals("") || uuid.equals(null)) {
   JOptionPane.showMessageDialog(mainFrame, "用戶ID為空,請(qǐng)重新輸入!");
   return;
  }

  if (name.equals("") || name.equals(null)) {
   JOptionPane.showMessageDialog(mainFrame, "用戶名為空,請(qǐng)重新輸入!");
   return;
  }

  if (!pwd.equals(pwd2) || pwd.equals("") || pwd.equals(null)
    || pwd2.equals("") || pwd2.equals(null)) {
   JOptionPane.showMessageDialog(mainFrame, "兩次密碼輸入不一致或密碼為空,請(qǐng)重新輸入!");
   return;
  }
  int type = 0;

  try {
   type = UserTypeEnum.getTypeByName(combType.getSelectedItem()
     .toString());
  } catch (Exception e) {
   JOptionPane.showMessageDialog(mainFrame, "請(qǐng)指定用戶類型!");
   return;
  }

  //2組織參數(shù)
  UserModel user = new UserModel();
  user.setName(name);
  user.setPwd(pwd);
  user.setType(type);
  user.setUuid(uuid);

  //3調(diào)用邏輯層
  UserEbi ebi = UserEbiFactory.getUserEbi();

  //4根據(jù)調(diào)用返回結(jié)果導(dǎo)向不同頁(yè)面
  if (ebi.create(user)) {
   back();
  } else {
   JOptionPane.showMessageDialog(null, "該用戶已經(jīng)存在!");
  }
 }

 //GEN-BEGIN:variables
 // Variables declaration - do not modify
 private javax.swing.JButton btnAdd;
 private javax.swing.JButton btnBack;
 private javax.swing.JComboBox combType;
 private javax.swing.JLabel jLabel1;
 private javax.swing.JLabel jLabel2;
 private javax.swing.JLabel jLabel3;
 private javax.swing.JLabel jLabel4;
 private javax.swing.JLabel jLabel5;
 private javax.swing.JLabel jLabel6;
 private javax.swing.JTextField tfdName;
 private javax.swing.JPasswordField tfdPwd;
 private javax.swing.JPasswordField tfdPwd2;
 private javax.swing.JTextField tfdUuid;
 // End of variables declaration//GEN-END:variables

}

cn.hncu.bookStore.user.ui;

DeletePanel類:(刪除用戶模塊)

/*
 * DeletePanel.java
 *
 * Created on __DATE__, __TIME__
 */

package cn.hncu.bookStore.user.ui;

import javax.swing.JFrame;
import javax.swing.JOptionPane;

import cn.hncu.bookStore.common.UserTypeEnum;
import cn.hncu.bookStore.user.business.ebi.UserEbi;
import cn.hncu.bookStore.user.business.factory.UserEbiFactory;
import cn.hncu.bookStore.user.vo.UserModel;
import cn.hncu.bookStore.util.FileIoUtil;

/**
 * 
 * @author 陳浩翔
 *
 * @version 1.0
 */
public class DeletePanel extends javax.swing.JPanel {
 private JFrame mainFrame = null;
 private String uuid = null;

 /** Creates new form DeletePanel 
  * @param uuid */
 public DeletePanel(JFrame mainFrame, String uuid) {
  this.mainFrame = mainFrame;
  this.uuid = uuid;
  initComponents();
  myInitData();
 }

 private void myInitData() {
  UserEbi user = UserEbiFactory.getUserEbi();
  UserModel userModel = user.getSingle(uuid);
  tfdName.setText(userModel.getName());
  tfdUuid.setText(userModel.getUuid());
  tfdPwd.setText(userModel.getPwd());
  tfdType.setText(UserTypeEnum.getNameByType(userModel.getType()));

  tfdName.setEditable(false);
  tfdPwd.setEditable(false);
  tfdType.setEditable(false);
  tfdUuid.setEditable(false);

 }

 //GEN-BEGIN:initComponents
 // <editor-fold defaultstate="collapsed" desc="Generated Code">
 private void initComponents() {

  jLabel1 = new javax.swing.JLabel();
  jLabel2 = new javax.swing.JLabel();
  tfdName = new javax.swing.JTextField();
  jLabel3 = new javax.swing.JLabel();
  tfdUuid = new javax.swing.JTextField();
  jLabel4 = new javax.swing.JLabel();
  jLabel5 = new javax.swing.JLabel();
  tfdPwd = new javax.swing.JTextField();
  tfdType = new javax.swing.JTextField();
  btnBack = new javax.swing.JButton();
  btnDelete = new javax.swing.JButton();

  setMinimumSize(new java.awt.Dimension(800, 600));
  setLayout(null);

  jLabel1.setFont(new java.awt.Font("微軟雅黑", 1, 48));
  jLabel1.setForeground(new java.awt.Color(204, 0, 0));
  jLabel1.setText("\u5220\u9664\u7528\u6237");
  add(jLabel1);
  jLabel1.setBounds(330, 30, 230, 80);

  jLabel2.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel2.setText("\u7528\u6237\u7c7b\u578b:");
  add(jLabel2);
  jLabel2.setBounds(100, 310, 90, 30);

  tfdName.setFont(new java.awt.Font("Dialog", 1, 18));
  tfdName.setAutoscrolls(false);
  add(tfdName);
  tfdName.setBounds(480, 160, 120, 30);

  jLabel3.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel3.setText("uuid:");
  add(jLabel3);
  jLabel3.setBounds(130, 160, 50, 30);

  tfdUuid.setFont(new java.awt.Font("Dialog", 0, 11));
  add(tfdUuid);
  tfdUuid.setBounds(200, 160, 110, 30);

  jLabel4.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel4.setText("\u59d3\u540d:");
  add(jLabel4);
  jLabel4.setBounds(420, 160, 50, 30);

  jLabel5.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel5.setText("\u5bc6\u7801:");
  add(jLabel5);
  jLabel5.setBounds(130, 240, 50, 30);

  tfdPwd.setFont(new java.awt.Font("Tahoma", 1, 12));
  add(tfdPwd);
  tfdPwd.setBounds(200, 240, 160, 30);

  tfdType.setFont(new java.awt.Font("Dialog", 1, 12));
  add(tfdType);
  tfdType.setBounds(200, 310, 160, 30);

  btnBack.setFont(new java.awt.Font("Dialog", 1, 24));
  btnBack.setForeground(new java.awt.Color(0, 204, 204));
  btnBack.setText("\u8fd4\u56de");
  btnBack.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnBackActionPerformed(evt);
   }
  });
  add(btnBack);
  btnBack.setBounds(540, 450, 120, 60);

  btnDelete.setFont(new java.awt.Font("Dialog", 1, 24));
  btnDelete.setForeground(new java.awt.Color(0, 204, 204));
  btnDelete.setText("\u5220\u9664");
  btnDelete.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnDeleteActionPerformed(evt);
   }
  });
  add(btnDelete);
  btnDelete.setBounds(210, 450, 120, 60);
 }// </editor-fold>
 //GEN-END:initComponents

 private void btnDeleteActionPerformed(java.awt.event.ActionEvent evt) {
  //3調(diào)用邏輯層
  if (UserEbiFactory.getUserEbi().delete(uuid)) {
   back();
  } else {
   JOptionPane.showMessageDialog(mainFrame, "該用戶已經(jīng)不存在!");
  }

  //4根據(jù)調(diào)用返回結(jié)果導(dǎo)向不同頁(yè)面

 }

 private void btnBackActionPerformed(java.awt.event.ActionEvent evt) {
  back();
 }

 private void back() {
  mainFrame.setContentPane(new ListPanel(mainFrame));
  mainFrame.validate();
 }

 //GEN-BEGIN:variables
 // Variables declaration - do not modify
 private javax.swing.JButton btnBack;
 private javax.swing.JButton btnDelete;
 private javax.swing.JLabel jLabel1;
 private javax.swing.JLabel jLabel2;
 private javax.swing.JLabel jLabel3;
 private javax.swing.JLabel jLabel4;
 private javax.swing.JLabel jLabel5;
 private javax.swing.JTextField tfdName;
 private javax.swing.JTextField tfdPwd;
 private javax.swing.JTextField tfdType;
 private javax.swing.JTextField tfdUuid;
 // End of variables declaration//GEN-END:variables

}

cn.hncu.bookStore.user.ui;

UpdatePanel類:(修改用戶模塊)

/*
 * UpdatePanel.java
 *
 * Created on __DATE__, __TIME__
 */

package cn.hncu.bookStore.user.ui;

import javax.swing.JFrame;
import javax.swing.JOptionPane;

import cn.hncu.bookStore.common.UserTypeEnum;
import cn.hncu.bookStore.user.business.ebi.UserEbi;
import cn.hncu.bookStore.user.business.factory.UserEbiFactory;
import cn.hncu.bookStore.user.vo.UserModel;

/**
 * 
 * @author 陳浩翔
 *
 * @version 1.0
 */
public class UpdatePanel extends javax.swing.JPanel {
 private JFrame mainFrame = null;
 private String uuid = null;

 /**
  * Creates new form UpdatePanel
  * 
  * @param uuid
  * @param mainFrame
  */
 public UpdatePanel(JFrame mainFrame, String uuid) {
  this.mainFrame = mainFrame;
  this.uuid = uuid;
  initComponents();
  myInitData();
 }

 private void myInitData() {
  UserEbi ebi = UserEbiFactory.getUserEbi();
  UserModel user = ebi.getSingle(uuid);
  tfdUuid.setText(user.getUuid());
  tfdUuid.setEditable(false);

  tfdName.setText(user.getName());
  tfdPwd.setText(user.getPwd());
  tfdPwd2.setText(user.getPwd());

  combType.removeAllItems();
  String usert = UserTypeEnum.getNameByType(user.getType());
  combType.addItem(usert);
  for (UserTypeEnum userType : UserTypeEnum.values()) {
   if (!userType.getName().equals(usert)) {
    combType.addItem(userType.getName());
   }
  }

 }

 // GEN-BEGIN:initComponents
 // <editor-fold defaultstate="collapsed" desc="Generated Code">
 private void initComponents() {

  jLabel1 = new javax.swing.JLabel();
  jLabel2 = new javax.swing.JLabel();
  tfdName = new javax.swing.JTextField();
  jLabel3 = new javax.swing.JLabel();
  tfdUuid = new javax.swing.JTextField();
  jLabel4 = new javax.swing.JLabel();
  tfdPwd2 = new javax.swing.JPasswordField();
  jLabel5 = new javax.swing.JLabel();
  jLabel6 = new javax.swing.JLabel();
  tfdPwd = new javax.swing.JPasswordField();
  combType = new javax.swing.JComboBox();
  btnBack = new javax.swing.JButton();
  btnUpdate = new javax.swing.JButton();

  setMinimumSize(new java.awt.Dimension(800, 600));
  setLayout(null);

  jLabel1.setFont(new java.awt.Font("微軟雅黑", 1, 48));
  jLabel1.setForeground(new java.awt.Color(204, 0, 0));
  jLabel1.setText("\u4fee\u6539\u7528\u6237");
  add(jLabel1);
  jLabel1.setBounds(320, 30, 230, 80);

  jLabel2.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel2.setText("\u7528\u6237\u7c7b\u578b:");
  add(jLabel2);
  jLabel2.setBounds(90, 310, 90, 30);

  tfdName.setFont(new java.awt.Font("Dialog", 1, 18));
  tfdName.setAutoscrolls(false);
  add(tfdName);
  tfdName.setBounds(470, 160, 120, 30);

  jLabel3.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel3.setText("uuid:");
  add(jLabel3);
  jLabel3.setBounds(120, 160, 50, 30);

  tfdUuid.setFont(new java.awt.Font("Dialog", 1, 12));
  add(tfdUuid);
  tfdUuid.setBounds(190, 160, 110, 30);

  jLabel4.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel4.setText("\u59d3\u540d:");
  add(jLabel4);
  jLabel4.setBounds(410, 160, 50, 30);

  tfdPwd2.setFont(new java.awt.Font("Dialog", 1, 18));
  add(tfdPwd2);
  tfdPwd2.setBounds(470, 240, 170, 30);

  jLabel5.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel5.setText("\u5bc6\u7801:");
  add(jLabel5);
  jLabel5.setBounds(120, 240, 50, 30);

  jLabel6.setFont(new java.awt.Font("微軟雅黑", 0, 18));
  jLabel6.setText("\u786e\u8ba4\u5bc6\u7801:");
  add(jLabel6);
  jLabel6.setBounds(380, 240, 90, 30);

  tfdPwd.setFont(new java.awt.Font("宋體", 1, 18));
  add(tfdPwd);
  tfdPwd.setBounds(190, 240, 160, 30);

  combType.setFont(new java.awt.Font("Dialog", 1, 12));
  combType.setForeground(new java.awt.Color(51, 0, 255));
  combType.setModel(new javax.swing.DefaultComboBoxModel(
    new String[] { "" }));
  add(combType);
  combType.setBounds(190, 310, 170, 30);

  btnBack.setFont(new java.awt.Font("Dialog", 1, 24));
  btnBack.setForeground(new java.awt.Color(0, 204, 204));
  btnBack.setText("\u8fd4\u56de");
  btnBack.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnBackActionPerformed(evt);
   }
  });
  add(btnBack);
  btnBack.setBounds(500, 430, 120, 60);

  btnUpdate.setFont(new java.awt.Font("Dialog", 1, 24));
  btnUpdate.setForeground(new java.awt.Color(0, 204, 204));
  btnUpdate.setText("\u4fee\u6539");
  btnUpdate.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnUpdateActionPerformed(evt);
   }
  });
  add(btnUpdate);
  btnUpdate.setBounds(170, 430, 120, 60);
 }// </editor-fold>
  // GEN-END:initComponents

 private void btnUpdateActionPerformed(java.awt.event.ActionEvent evt) {
  // 1收集參數(shù)
  String uuid = tfdUuid.getText();
  String name = tfdName.getText();
  String pwd = new String(tfdPwd.getPassword());
  String pwd2 = new String(tfdPwd2.getPassword());

  if (uuid.equals("") || uuid.equals(null)) {
   JOptionPane.showMessageDialog(mainFrame, "用戶ID為空,請(qǐng)重新輸入!");
   return;
  }

  if (name.equals("") || name.equals(null)) {
   JOptionPane.showMessageDialog(mainFrame, "用戶名為空,請(qǐng)重新輸入!");
   return;
  }

  if (!pwd.equals(pwd2) || pwd.equals("") || pwd.equals(null)
    || pwd2.equals("") || pwd2.equals(null)) {
   JOptionPane.showMessageDialog(mainFrame, "兩次密碼輸入不一致或密碼為空,請(qǐng)重新輸入!");
   return;
  }
  int type = 0;

  try {
   type = UserTypeEnum.getTypeByName(combType.getSelectedItem()
     .toString());
  } catch (Exception e) {
   JOptionPane.showMessageDialog(mainFrame, "請(qǐng)指定用戶類型!");
   return;
  }

  // 2組織參數(shù)
  UserModel user = new UserModel();
  user.setName(name);
  user.setPwd(pwd);
  user.setType(type);
  user.setUuid(uuid);

  // 3調(diào)用邏輯層
  UserEbi ebi = UserEbiFactory.getUserEbi();

  // 4根據(jù)調(diào)用返回結(jié)果導(dǎo)向不同頁(yè)面
  if (ebi.update(user)) {
   back();
  } else {
   JOptionPane.showMessageDialog(null, "該用戶已經(jīng)不存在!");
  }

 }

 private void btnBackActionPerformed(java.awt.event.ActionEvent evt) {
  back();
 }

 private void back() {
  mainFrame.setContentPane(new ListPanel(mainFrame));
  mainFrame.validate();
 }

 // GEN-BEGIN:variables
 // Variables declaration - do not modify
 private javax.swing.JButton btnBack;
 private javax.swing.JButton btnUpdate;
 private javax.swing.JComboBox combType;
 private javax.swing.JLabel jLabel1;
 private javax.swing.JLabel jLabel2;
 private javax.swing.JLabel jLabel3;
 private javax.swing.JLabel jLabel4;
 private javax.swing.JLabel jLabel5;
 private javax.swing.JLabel jLabel6;
 private javax.swing.JTextField tfdName;
 private javax.swing.JPasswordField tfdPwd;
 private javax.swing.JPasswordField tfdPwd2;
 private javax.swing.JTextField tfdUuid;
 // End of variables declaration//GEN-END:variables

}

cn.hncu.bookStore.user.ui;

ListPanel類(調(diào)用用戶功能模塊)

/*
 * ListPanel.java
 *
 * Created on __DATE__, __TIME__
 */

package cn.hncu.bookStore.user.ui;

import java.util.List;

import javax.swing.JFrame;
import javax.swing.JOptionPane;

import cn.hncu.bookStore.user.business.ebi.UserEbi;
import cn.hncu.bookStore.user.business.factory.UserEbiFactory;
import cn.hncu.bookStore.user.vo.UserModel;

/**
 * 表現(xiàn)層-用戶列表面板
 * 
 * @author 陳浩翔
 * @version 1.0
 */
public class ListPanel extends javax.swing.JPanel {
 private JFrame mainFrame = null;

 /** Creates new form ListPanel */
 public ListPanel(JFrame mainFrame) {
  this.mainFrame = mainFrame;
  initComponents();
  myInitData();
 }

 /**
  * 讀取所有用戶并添加進(jìn)列表
  */
 private void myInitData() {
  UserEbi user = UserEbiFactory.getUserEbi();
  List<UserModel> list = user.getAll();
  userLists.setListData(list.toArray());
 }

 //GEN-BEGIN:initComponents
 // <editor-fold defaultstate="collapsed" desc="Generated Code">
 private void initComponents() {

  jScrollPane1 = new javax.swing.JScrollPane();
  userLists = new javax.swing.JList();
  jLabel1 = new javax.swing.JLabel();
  btnToAdd = new javax.swing.JButton();
  btnToDelete = new javax.swing.JButton();
  btnToUpdate = new javax.swing.JButton();

  setMinimumSize(new java.awt.Dimension(800, 600));
  setLayout(null);

  userLists.setModel(new javax.swing.AbstractListModel() {
   String[] strings = { "" };

   public int getSize() {
    return strings.length;
   }

   public Object getElementAt(int i) {
    return strings[i];
   }
  });
  jScrollPane1.setViewportView(userLists);

  add(jScrollPane1);
  jScrollPane1.setBounds(170, 80, 480, 230);

  jLabel1.setFont(new java.awt.Font("Tahoma", 1, 48));
  jLabel1.setForeground(new java.awt.Color(204, 0, 51));
  jLabel1.setText("User List");
  add(jLabel1);
  jLabel1.setBounds(300, 0, 260, 80);

  btnToAdd.setFont(new java.awt.Font("Dialog", 1, 24));
  btnToAdd.setForeground(new java.awt.Color(0, 102, 102));
  btnToAdd.setText("\u6dfb\u52a0\u7528\u6237");
  btnToAdd.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnToAddActionPerformed(evt);
   }
  });
  add(btnToAdd);
  btnToAdd.setBounds(160, 350, 150, 50);

  btnToDelete.setFont(new java.awt.Font("Dialog", 1, 24));
  btnToDelete.setForeground(new java.awt.Color(0, 102, 102));
  btnToDelete.setText("\u5220\u9664\u7528\u6237");
  btnToDelete.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnToDeleteActionPerformed(evt);
   }
  });
  add(btnToDelete);
  btnToDelete.setBounds(510, 350, 150, 50);

  btnToUpdate.setFont(new java.awt.Font("Dialog", 1, 24));
  btnToUpdate.setForeground(new java.awt.Color(0, 102, 102));
  btnToUpdate.setText("\u4fee\u6539\u7528\u6237");
  btnToUpdate.addActionListener(new java.awt.event.ActionListener() {
   public void actionPerformed(java.awt.event.ActionEvent evt) {
    btnToUpdateActionPerformed(evt);
   }
  });
  add(btnToUpdate);
  btnToUpdate.setBounds(160, 450, 150, 50);
 }// </editor-fold>
 //GEN-END:initComponents

 private void btnToUpdateActionPerformed(java.awt.event.ActionEvent evt) {
  UserModel user = (UserModel) userLists.getSelectedValue();

  if (user == null) {
   JOptionPane.showMessageDialog(mainFrame, "請(qǐng)選擇要修改的用戶!");
   return;
  }

  String uuid = user.getUuid();

  mainFrame.setContentPane(new UpdatePanel(mainFrame, uuid));
  mainFrame.validate();
 }

 private void btnToDeleteActionPerformed(java.awt.event.ActionEvent evt) {
  UserModel user = (UserModel) userLists.getSelectedValue();

  if (user == null) {
   JOptionPane.showMessageDialog(mainFrame, "請(qǐng)選擇要?jiǎng)h除的用戶!");
   return;
  }

  String uuid = user.getUuid();

  mainFrame.setContentPane(new DeletePanel(mainFrame, uuid));
  mainFrame.validate();
 }

 private void btnToAddActionPerformed(java.awt.event.ActionEvent evt) {
  mainFrame.setContentPane(new AddPanel(mainFrame));
  mainFrame.validate();
 }

 //GEN-BEGIN:variables
 // Variables declaration - do not modify
 private javax.swing.JButton btnToAdd;
 private javax.swing.JButton btnToDelete;
 private javax.swing.JButton btnToUpdate;
 private javax.swing.JLabel jLabel1;
 private javax.swing.JScrollPane jScrollPane1;
 private javax.swing.JList userLists;
 // End of variables declaration//GEN-END:variables

}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • spring boot封裝HttpClient的示例代碼

    spring boot封裝HttpClient的示例代碼

    這篇文章主要介紹了spring boot封裝HttpClient的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-01-01
  • 深入理解Java對(duì)象復(fù)制

    深入理解Java對(duì)象復(fù)制

    使用任何已有的工具,都沒有直接使用 get set 方式進(jìn)行,對(duì)象轉(zhuǎn)換的速度快,雖然get set 方式代碼對(duì)一些比較麻煩,但是效率要高一些的,推薦使用 MapStruct 方式.,需要的朋友可以參考下
    2021-05-05
  • java的反射用不好試試內(nèi)省?

    java的反射用不好試試內(nèi)省?

    使用內(nèi)省相對(duì)于直接使用反射更加安全可靠,Java的反射機(jī)制比較特殊,它不同于一般的編程方式,稍不小心就容易破壞類的封裝性。練的不好,就容易走火入魔。沒關(guān)系,很多時(shí)候我們還可以使用Java的內(nèi)省機(jī)制哦
    2021-07-07
  • SpringBoot中使用MyBatis-Plus詳細(xì)步驟

    SpringBoot中使用MyBatis-Plus詳細(xì)步驟

    MyBatis-Plus是MyBatis的增強(qiáng)工具,簡(jiǎn)化了MyBatis的使用,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • spring boot使用自定義的線程池執(zhí)行Async任務(wù)

    spring boot使用自定義的線程池執(zhí)行Async任務(wù)

    這篇文章主要介紹了spring boot使用自定義的線程池執(zhí)行Async任務(wù)的相關(guān)資料,需要的朋友可以參考下
    2018-02-02
  • Java枚舉抽象方法實(shí)例解析

    Java枚舉抽象方法實(shí)例解析

    這篇文章主要介紹了Java枚舉抽象方法實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • Java?Spring?boot實(shí)現(xiàn)生成二維碼

    Java?Spring?boot實(shí)現(xiàn)生成二維碼

    大家好,本篇文章主要講的是Java?Spring?boot實(shí)現(xiàn)生成二維碼,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-02-02
  • springCloud集成nacos config的過程

    springCloud集成nacos config的過程

    本文介紹spring cloud集成nacos config的過程,通過實(shí)例代碼圖文相結(jié)合給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • java實(shí)現(xiàn)裝飾器模式(Decorator Pattern)

    java實(shí)現(xiàn)裝飾器模式(Decorator Pattern)

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)裝飾器模式Decorator Pattern,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • java基于C/S結(jié)構(gòu)實(shí)現(xiàn)多線程聊天室

    java基于C/S結(jié)構(gòu)實(shí)現(xiàn)多線程聊天室

    這篇文章主要為大家詳細(xì)介紹了java基于C/S結(jié)構(gòu)實(shí)現(xiàn)多線程聊天室,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01

最新評(píng)論

那坡县| 汨罗市| 芷江| 昌邑市| 新河县| 蓝山县| 稷山县| 汕尾市| 奉化市| 大渡口区| 张家界市| 长治市| 高密市| 泾阳县| 怀安县| 青川县| 姚安县| 灵丘县| 大洼县| 宿州市| 饶平县| 荃湾区| 平泉县| 馆陶县| 河北省| 延庆县| 凤山市| 平安县| 渭南市| 昆明市| 上林县| 望城县| 莒南县| 福清市| 北安市| 介休市| 静海县| 加查县| 谷城县| 金寨县| 阜新|