📄 modifypassword.java
字号:
//package myprojects.main;
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.*;
public class ModifyPassword extends JPanel implements ActionListener
{
int select=0;
Connection con=null;
Statement stmt=null;
String url = "jdbc:odbc:java";
String username = "sa";
String password = "";
JPasswordField 当前密码,新密码,确认新密码;
JButton 修改,重置;
public ModifyPassword(int select)
{
this.select=select;
当前密码=new JPasswordField(20);
当前密码.setEditable(true);
新密码=new JPasswordField(20);
新密码.setEditable(true);
确认新密码=new JPasswordField(20);
确认新密码.setEditable(true);
修改=new JButton("修改");
修改.addActionListener(this);
重置=new JButton("重置");
重置.addActionListener(this);
Box box1=Box.createHorizontalBox();
box1.add(new JLabel("键入您当前的密码: ",JLabel.CENTER));
Box box2=Box.createHorizontalBox();
box2.add(当前密码);
Box box3=Box.createHorizontalBox();
box3.add(new JLabel("输入一个新的密码: ",JLabel.CENTER));
Box box4=Box.createHorizontalBox();
box4.add(新密码);
Box box5=Box.createHorizontalBox();
box5.add(new JLabel("再次输入新的密码: ",JLabel.CENTER));
Box box6=Box.createHorizontalBox();
box6.add(确认新密码);
Box boxH=Box.createVerticalBox();
boxH.add(box1);
boxH.add(box2);
boxH.add(box3);
boxH.add(box4);
boxH.add(box5);
boxH.add(box6);
boxH.add(Box.createVerticalGlue());
JPanel pCenter=new JPanel();
pCenter.add(boxH);
setLayout(new BorderLayout());
add(pCenter,BorderLayout.CENTER);
JPanel pSouth=new JPanel();
pSouth.add(修改);
pSouth.add(重置);
add(pSouth,BorderLayout.SOUTH);
validate();
setVisible(false);
setBounds(100,200,360,270);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==修改)
{
if(新密码.getText().equals(确认新密码.getText()))
{
try
{
inquestPass();
}
catch(SQLException ee){}
}
else
{
JOptionPane.showMessageDialog ( this ,"你输入的密码不匹配。请重新输入!","用户帐户",JOptionPane.WARNING_MESSAGE );
当前密码.setText(null);
新密码.setText(null);
确认新密码.setText(null);
}
}
if(e.getSource()==重置)
{
当前密码.setText(null);
新密码.setText(null);
确认新密码.setText(null);return;
}
}
/*----------------------------------------------------------------*/
private void inquestPass() throws SQLException
{
String InsertQuery=null;
if(select==0)
{
InsertQuery="SELECT * FROM 学生基本信息表 WHERE 学号='"
+LoginFrame.userNameTextField.getText()+"' AND 密码='"+当前密码.getText()+"'";
}
if(select==1)
{
InsertQuery="SELECT * FROM 教师表 WHERE 登陆帐号='"
+LoginFrame.userNameTextField.getText()+"' AND 登陆密码='"+当前密码.getText()+"'";
}
if(select==2)
{
InsertQuery="SELECT * FROM 管理员 WHERE 用户名='"
+LoginFrame.userNameTextField.getText()+"' AND 密码='"+当前密码.getText()+"'";
}
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException cnfe){}
con=DriverManager.getConnection(url,username,password);
stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(InsertQuery);
boolean moreRecords=rs.next();
if(!moreRecords)
{
String warning="请输入当前使用的密码!";
JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);
con.close();
return;
}
else
try
{
updatePass();
}
catch ( SQLException sqlex )
{
JOptionPane.showMessageDialog ( this ,"你输入的数据类型不匹配或长度超出了\n"+
"允许的长度,请重新输入或联系管理员!",
"学生选课管理系统",JOptionPane.WARNING_MESSAGE );
/* JOptionPane.showMessageDialog ( this ,sqlex ,
"学生选课管理系统",JOptionPane.WARNING_MESSAGE ); */
}
}
//修改密码
public void updatePass() throws SQLException
{
String InsertUpdate=null;
if(select==0)
{
InsertUpdate = "UPDATE 学生基本信息表 SET 密码='"+新密码.getText()+
"' WHERE 学号='"+LoginFrame.userNameTextField.getText()+"'";
}
if(select==1)
{
InsertUpdate = "UPDATE 教师表 SET 登陆密码='"+新密码.getText()+
"' WHERE 登陆帐号='"+LoginFrame.userNameTextField.getText()+"'";
}
if(select==2)
{
InsertUpdate = "UPDATE 管理员 SET 密码='"+新密码.getText()+
"' WHERE 用户名 ='"+LoginFrame.userNameTextField.getText()+"'";
}
int insert = stmt.executeUpdate( InsertUpdate );//executeUpdate返回一个整型值
if (insert >=1)
{
JOptionPane.showMessageDialog( this,"密码修改成功!" );
}
con.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -