java swing工程 登录记住密码如何做

java swing工程 登录记住密码如何做,第1张

md5加密是不可逆的,像记住密码的话是不用md5加密来在本地保存用户的用户名和密码的,而是可以通过像DES这种可逆的加密方式来在本地保存数据。如果想在本地也用md5加密,那么你登录的时候必然会对加密字符串再做一次加密处理,无解。而用DES的话,从文件中读取的时候就可以进行一次解密,然后再通过md5加密验证其用户名密码的正确性,不仅可以解决安全问题,多次加密的麻烦也就可以解决了。

未实现。根据查询相关公开信息显示,javaswing软件只能对软件框架以及内容进行设置,无法对密码们进行底层代码修改。java是具有大部分编程语言所共有的一些特征,被特意设计用于互联网的分布式环境。

完整代码如下:

import javax.swing.JFrame

import javax.swing.JTextField

import javax.swing.JPasswordField

import javax.swing.JLabel

import javax.swing.JButton

import java.awt.Container

import java.awt.Insets

import java.awt.Dimension

import java.awt.event.ActionListener

import java.awt.event.ActionEvent

import java.awt.event.WindowEvent

import java.awt.event.WindowAdapterpublic class FieldDemo extends JFrame implements ActionListener {

JTextField nameField

JPasswordField passFieldpublic static void main(String arg[]) {

new FieldDemo()

} public FieldDemo() {

int height

int width

addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

System.exit(0)

}

})

setLocation(250, 150)

Container pane = getContentPane()

pane.setLayout(null)

Insets insets = pane.getInsets() JLabel nameLabel = new JLabel("User name")

Dimension labelDim = nameLabel.getPreferredSize()

int x1 = insets.left + 20

int y1 = insets.top + 20

nameLabel.setBounds(x1, y1, labelDim.width, labelDim.height)

nameLabel.setHorizontalTextPosition(JLabel.RIGHT)

pane.add(nameLabel) JLabel passLabel = new JLabel("Password")

int x2 = x1

int y2 = y1 + labelDim.height + 20

passLabel.setBounds(x2, y2, labelDim.width, labelDim.height)

passLabel.setHorizontalTextPosition(JLabel.RIGHT)

pane.add(passLabel) nameField = new JTextField(32)

x1 += labelDim.width

Dimension textDim = nameField.getPreferredSize()

nameField.setBounds(x1, y1, textDim.width, textDim.height)

pane.add(nameField) passField = new JPasswordField(32)// 密码框专用,没有明文回显

x2 += labelDim.width

passField.setBounds(x2, y2, textDim.width, textDim.height)

pane.add(passField) width = x1 + textDim.width + 20 + insets.left JButton button = new JButton("Login")

Dimension buttonDim = button.getPreferredSize()

int x3 = (width - buttonDim.width) / 2

int y3 = y2 + labelDim.height + 20

button.setBounds(x3, y3, buttonDim.width, buttonDim.height)

button.addActionListener(this)

pane.add(button) height = y3 + buttonDim.height + 40 + insets.bottom setSize(width, height)

setVisible(true)

} public void actionPerformed(ActionEvent e) {

System.out.println(nameField.getText())

char password[] = passField.getPassword()

System.out.println(password)

System.exit(0)

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8154237.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存