📄 xiugai.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
import javax.imageio.*;
import java.io.*;
import javax.swing.JLabel;
import java.awt.Window;
import java.sql.*;
import javax.swing.event.*;
import java.awt.MediaTracker;
import javax.swing.border.*;
class xiuGai extends JFrame
{
public xiuGai(String name)
{
Toolkit kit =Toolkit.getDefaultToolkit();
Dimension screenSize=kit.getScreenSize();
int screenWidth=screenSize.width;
int screenHeight=screenSize.height;
setLocation((screenWidth-DEFA_W)/2,(screenHeight-DEFA_H)/2); //设置窗口位置,位于屏幕中间
setTitle("用户信息——修改密码");
setSize(DEFA_W,DEFA_H);
setResizable(false); //不允许用户改变窗口大小
xiuGaiPane XGP=new xiuGaiPane(name);
add(XGP);
}
private final int DEFA_W=320; //设置框架的宽度
private final int DEFA_H=260; //设置框架的高度
}
class xiuGaiPane extends JPanel
{
public xiuGaiPane(String name)
{
USERNAME=name;
setLayout(null);
setBackground(new Color(153,204,255));
readImage();
xiangMu();
anNiu();
}
public void connDBQ() throws SQLException
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){}
String URL="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=mdb.mdb";
conn=DriverManager.getConnection(URL);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery("select * from user where name like '"+USERNAME+"'");
}
public void getDateBase()
{
int i=0;
int j=0;
int k=0;
char[] OLDPSWD;
char[] XMM;
char[] XMMOK;
USERNAME=(String)yongHuName.getText().trim();
OLDPSWD=yuanMiMa.getPassword();
while(i<OLDPSWD.length)
{
OLDPASSWORD=OLDPASSWORD+OLDPSWD[i];
i=i+1;
}
OLDPASSWORD=OLDPASSWORD.substring(1);
XMM=xinMiMa.getPassword();
while(j<XMM.length)
{
PASSWORD=PASSWORD+XMM[j];
j=j+1;
}
PASSWORD=PASSWORD.substring(1);
XMMOK=xinMiMaOk.getPassword();
while(k<XMMOK.length)
{
PASSWORDOK=PASSWORDOK+XMMOK[k];
k=k+1;
}
PASSWORDOK=PASSWORDOK.substring(1);
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2=(Graphics2D)g;
g2.drawImage(img,0,0,null);
Font biaoTi=new Font("Dialog",Font.BOLD,24);
Font neiRong=new Font("Dialog",Font.PLAIN,15);
Font xiao=new Font("Dialog",Font.PLAIN,12);
g2.setFont(biaoTi);
g2.setPaint(new Color(153,51,205));
g2.drawString("用户信息管理---修改密码",25,40);
g2.setPaint(new Color(255,153,0));
g2.draw(new Line2D.Double(20,50,300,50));
g2.draw(new Line2D.Double(20,53,300,53));
g2.setFont(neiRong);
g2.setPaint(new Color(153,51,205));
g2.drawString("用 户 名:",25,80);
g2.drawString("密 码:",25,110);
g2.drawString("新 密 码:",25,140);
g2.drawString("确认密码:",25,170);
}
private void readImage()
{
try
{
img=ImageIO.read(new File("xiugai.jpg"));
}
catch(IOException e)
{
try
{
img=ImageIO.read(new File("img\\xiugai.jpg"));
}
catch(IOException ee){}
}
}
private void xiangMu()
{
yongHuName=new JTextField();
yuanMiMa=new JPasswordField(12);
xinMiMa=new JPasswordField(null,12);
xinMiMaOk=new JPasswordField(null,12);
add(yongHuName);
add(yuanMiMa);
add(xinMiMa);
add(xinMiMaOk);
yongHuName.setBounds(100,65,160,22);
yuanMiMa.setBounds(100,95,160,22);
xinMiMa.setBounds(100,125,160,22);
xinMiMaOk.setBounds(100,155,160,22);
yongHuName.setText(USERNAME);
}
private void anNiu()
{
JButton XG=new JButton("修改");
JButton FH=new JButton("返回");
add(XG);
add(FH);
XG.setBounds(170,190,60,30);
FH.setBounds(240,190,60,30);
ANXGAction ANXGA=new ANXGAction();
ANFHAction ANFHA=new ANFHAction();
XG.addActionListener(ANXGA);
FH.addActionListener(ANFHA);
}
private class ANXGAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
String pswdYanZheng=null;
getDateBase();
try
{
connDBQ();
}
catch(SQLException e){}
if(USERNAME.length()==0)
{
JOptionPane.showMessageDialog(null, "请输入用户名", "出错了", JOptionPane.ERROR_MESSAGE);
PASSWORD="#";
PASSWORDOK="#";
OLDPASSWORD="#";
getDateBase();
}
if(OLDPASSWORD.length()==0)
{
JOptionPane.showMessageDialog(null, "请输入原来密码", "出错了", JOptionPane.ERROR_MESSAGE);
PASSWORD="#";
PASSWORDOK="#";
OLDPASSWORD="#";
getDateBase();
}
if(PASSWORD.length()==0)
{
JOptionPane.showMessageDialog(null, "请输入新密码", "出错了", JOptionPane.ERROR_MESSAGE);
PASSWORD="#";
PASSWORDOK="#";
OLDPASSWORD="#";
getDateBase();
}
if(PASSWORDOK.length()==0)
{
JOptionPane.showMessageDialog(null, "请输入确认密码", "出错了", JOptionPane.ERROR_MESSAGE);
PASSWORD="#";
PASSWORDOK="#";
OLDPASSWORD="#";
getDateBase();
}
if(!PASSWORD.equals(PASSWORDOK))
{
JOptionPane.showMessageDialog(null, "两次输入的密码不一致,请重输", "出错了", JOptionPane.ERROR_MESSAGE);
PASSWORD="#";
PASSWORDOK="#";
OLDPASSWORD="#";
getDateBase();
}
if(USERNAME.length()!=0 && OLDPASSWORD.length()!=0 && PASSWORD.length()!=0 && PASSWORDOK.length()!=0 && PASSWORD.equals(PASSWORDOK))
{
try
{
if(rs.next())
{
rs.beforeFirst();
while(rs.next())
{
pswdYanZheng=rs.getString("password");
if(pswdYanZheng.equals(OLDPASSWORD))
{
String pa=PASSWORDOK;
stmt.executeUpdate("update user set password='"+PASSWORD+"' where name like '"+USERNAME+"'" );
PASSWORDOK="#";
OLDPASSWORD="#";
PASSWORD="#";
getDateBase();
xiuGaiOk XGOKF=new xiuGaiOk(USERNAME,pa);
XGOKF.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
XGOKF.setVisible(true);
}
else
{
PASSWORD="#";
OLDPASSWORD="#";
PASSWORDOK="#";
getDateBase();
JOptionPane.showMessageDialog(null, "密码错误,请重新输入", "出错了", JOptionPane.ERROR_MESSAGE);
}
}
}
else
JOptionPane.showMessageDialog(null, "没有此用户名,请检查输入是否正确", "出错了", JOptionPane.ERROR_MESSAGE);
PASSWORD="#";
PASSWORDOK="#";
OLDPASSWORD="#";
}
catch(SQLException e){}
}
PASSWORD="#";
PASSWORDOK="#";
OLDPASSWORD="#";
}
}
private class ANFHAction implements ActionListener
{
public void actionPerformed(ActionEvent Event)
{
}
}
private Image img;
private String USERNAME;
private String PASSWORD="#";
private String PASSWORDOK="#";
private String OLDPASSWORD="#";
JTextField yongHuName;
JPasswordField yuanMiMa;
JPasswordField xinMiMa;
JPasswordField xinMiMaOk;
private Connection conn=null;
private Statement stmt=null;
private ResultSet rs=null;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -