⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changepwddialog.java

📁 是适合于使用的管理系统 可以在现实中使用
💻 JAVA
字号:
package mysiloer;

import java.awt.*;
import javax.swing.*;
import javax.swing.border.Border;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.SQLException;
import java.sql.ResultSet;

/**
 * <p>Title: MySiloer</p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: yskey</p>
 *
 * @author 杨涛
 * @version 1.0
 */
public class ChangePwdDialog
    extends JDialog {
  JPanel mainPanel = new JPanel();
  GridLayout gridLayout1 = new GridLayout();
  JLabel userNamelLab = new JLabel();
  JTextField userNameField = new JTextField();
  JLabel reNewPwdLab = new JLabel();
  JPasswordField reNewPwdField = new JPasswordField();
  JLabel newPwdLab = new JLabel();
  JPasswordField oldPwdField = new JPasswordField();
  JLabel oldPwdLab = new JLabel();
  JPasswordField newPwdField = new JPasswordField();
  JPanel contentPane = new JPanel();
  BorderLayout borderLayout1 = new BorderLayout();
  JPanel controlPanel = new JPanel();
  JButton cancelButt = new JButton();
  JButton okButt = new JButton();
  JLabel jLabel1 = new JLabel();
  Border border1 = BorderFactory.createEmptyBorder(5, 10, 10, 10);
  Border border2 = BorderFactory.createEmptyBorder(10, 10, 10, 10);
  Border border3 = BorderFactory.createEmptyBorder(5, 10, 10, 10);
  Connection con = null;
  public ChangePwdDialog(UserPanel owner, String title, boolean modal) {
    super(new JFrame(), title, modal);
    try {
      con = owner.con;
      setDefaultCloseOperation(DISPOSE_ON_CLOSE);
      jbInit();
      pack();
      Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
      Dimension frameSize = getSize();
      if (frameSize.height > screenSize.height) {
        frameSize.height = screenSize.height;
      }
      if (frameSize.width > screenSize.width) {
        frameSize.width = screenSize.width;
      }
      setLocation( (screenSize.width - frameSize.width) / 2,
                  (screenSize.height - frameSize.height) / 2 - 150);

    }
    catch (Exception exception) {
      exception.printStackTrace();
    }
  }

  public ChangePwdDialog() {
//    this(new Frame(), "ChangePwdDialog", false);
  }

  private void jbInit() throws Exception {
    mainPanel.setLayout(gridLayout1);
    gridLayout1.setColumns(2);
    gridLayout1.setHgap(5);
    gridLayout1.setRows(4);
    gridLayout1.setVgap(5);
    userNamelLab.setText("要更改的用户名:");
    userNameField.setText("");
    reNewPwdLab.setText("请再确认新密码:");
    reNewPwdField.setText("");
    newPwdLab.setText("请输入新密码:");
    oldPwdField.setText("");
    oldPwdLab.setText("请输入旧密码:");
    newPwdField.setText("");
    contentPane.setLayout(borderLayout1);
    cancelButt.setText("取    消");
    cancelButt.addActionListener(new ChangePwdDialog_jButton1_actionAdapter(this));
    okButt.setToolTipText("");
    okButt.setText("确    定");
    okButt.addActionListener(new ChangePwdDialog_okButt_actionAdapter(this));
    jLabel1.setText("                ");
    mainPanel.setBorder(border2);
    controlPanel.setBorder(border3);
    mainPanel.add(userNamelLab);
    mainPanel.add(userNameField);
    mainPanel.add(oldPwdLab);
    mainPanel.add(oldPwdField);
    mainPanel.add(newPwdLab);
    mainPanel.add(newPwdField);
    mainPanel.add(reNewPwdLab);
    mainPanel.add(reNewPwdField);
    this.getContentPane().add(contentPane, java.awt.BorderLayout.NORTH);
    contentPane.add(mainPanel, java.awt.BorderLayout.CENTER);
    contentPane.add(controlPanel, java.awt.BorderLayout.SOUTH);
    controlPanel.add(okButt);
    controlPanel.add(jLabel1);
    controlPanel.add(cancelButt);
    userNameField.addActionListener(new ActionListener(){
      public void actionPerformed(ActionEvent e){
        okButt_actionPerformed(e);
      }});
    oldPwdField.addActionListener(new ActionListener(){
      public void actionPerformed(ActionEvent e){
        okButt_actionPerformed(e);
      }});
    newPwdField.addActionListener(new ActionListener(){
      public void actionPerformed(ActionEvent e){
        okButt_actionPerformed(e);
      }});
    reNewPwdField.addActionListener(new ActionListener(){
      public void actionPerformed(ActionEvent e){
        okButt_actionPerformed(e);
      }});
  }

  public void cancelButt_actionPerformed(ActionEvent e) {
    this.setVisible(false);
    this.dispose();
  }

  public void okButt_actionPerformed(ActionEvent e) {
    if (userNameField.getText() != null && userNameField.getText().length() > 0) {
      try {
        String userName = userNameField.getText().trim();
        Statement sta = con.createStatement();
        ResultSet set = sta.executeQuery("select password from " +
                                         Type.USERTABLE + " where userName=" +
                                         "'" + userName + "'");
        set.next();
        String pwd = set.getString(1).trim();
        String oldPwd = getStringFromPwdField(oldPwdField);
        if(oldPwd.equals(pwd)){
          String newPwd = getStringFromPwdField(newPwdField);
          String reNewPwd = getStringFromPwdField(reNewPwdField);
          if(newPwd.equals(reNewPwd)){
            updateUser(userName, newPwd);
            JOptionPane.showMessageDialog(this, userName+"的密码修改成功,请下次用新密码登录!!!");
            this.setVisible(true);
            this.dispose();
//            userNameField.setText("");
//            oldPwdField.setText("");
//            newPwdField.setText("");
//            reNewPwdField.setText("");
          }
          else{
            JOptionPane.showMessageDialog(this, "输入的新密码与确认密码不一致,请重新输入!!");
            newPwdField.setText("");
            reNewPwdField.setText("");
          }

        }
        else{
          JOptionPane.showMessageDialog(this, "旧密码不正确,请重新输入!!!");
          oldPwdField.setText("");
        }

      }
      catch (SQLException ex) {
        System.out.println(ex.toString());
      }
    }
    else {
      JOptionPane.showMessageDialog(this, "请输入要更改的用户的用户名!!!!");
      userNameField.setText("");
    }
  }
  private String getStringFromPwdField(JPasswordField field){
    char[] charPwd = field.getPassword();
    return new String(charPwd).trim();
  }
  private void updateUser(String userName, String newPwd) throws SQLException{
    Statement sta = con.createStatement();
    int count = sta.executeUpdate("update "+Type.USERTABLE+" set password='"+newPwd+"'"+" where userName='"+userName+"'");
  }
}

class ChangePwdDialog_okButt_actionAdapter
    implements ActionListener {
  private ChangePwdDialog adaptee;
  ChangePwdDialog_okButt_actionAdapter(ChangePwdDialog adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.okButt_actionPerformed(e);
  }
}

class ChangePwdDialog_jButton1_actionAdapter
    implements ActionListener {
  private ChangePwdDialog adaptee;
  ChangePwdDialog_jButton1_actionAdapter(ChangePwdDialog adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {

    adaptee.cancelButt_actionPerformed(e);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -