键入密码短语时
yeast bulk seize is shows pain
每个人都能听到敲击空格键的声音,因此在密码字段中显示空格也很合逻辑。所以我想要一些可以显示的东西
***** **** ***** ** ***** ****
代替
******************************
这将使键入更加容易,同时几乎不降低安全性。
更新Riduidel的评论之前请三思。当布鲁斯·施耐尔(Bruce
Schneier)写
“是时候以明文形式显示大多数密码了”时 ,那么显示其中的一小部分也必须是正确的。尤其是显示仅通过聆听即可捕获的部分。
这是一种变体,用于setEchoChar()
使密码在预定的时间内可见:例如三秒钟。
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JPasswordField;
import javax.swing.Timer;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
/** @see http://stackoverflow.com/questions/5339702 */
public class PasswordTest {
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGui();
}
});
}
private static void createAndShowGui() {
JFrame jf = new JFrame("Test Password");
JPasswordField jpwd = new JPasswordField();
TimedPasswordListener tpl = new TimedPasswordListener(jpwd);
jpwd.getDocument().addDocumentListener(tpl);
jf.add(jpwd);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setLocationRelativeTo(null);
jf.pack();
jf.setVisible(true);
}
}
class TimedPasswordListener implements DocumentListener, ActionListener {
private Timer timer = new Timer(3000, this);
private char echoChar;
private JPasswordField pwf;
public TimedPasswordListener(JPasswordField jp) {
pwf = jp;
timer.setRepeats(false);
}
public void insertUpdate(DocumentEvent e) {
showText(e);
}
public void removeUpdate(DocumentEvent e) {
showText(e);
}
public void changedUpdate(DocumentEvent e) {}
public void showText(DocumentEvent e) {
if (0 != pwf.getEchoChar()) {
echoChar = pwf.getEchoChar();
}
pwf.setEchoChar((char) 0);
timer.restart();
}
public void actionPerformed(ActionEvent e) {
pwf.setEchoChar(echoChar);
}
}
问题内容: 在Java中,您可以创建一个仅包含抽象方法的抽象类。另一方面,您可以创建一个声明相同方法的接口。在这种情况下,可以使用抽象类代替接口吗? 问题答案: 不总是: 一堂课只能延伸 一 堂课 一个类可以实现 多个 接口 Sun文档 进行了更详细的比较: 抽象类与接口 与接口不同,抽象类可以包含非静态和最终字段,并且可以包含已实现的方法。此类抽象类与接口相似,不同之处在于它们提供了部分实现,将
问题内容: 我对此事有点困惑。我正在设计一个ORM类,它的行为与ActiveRecord在ruby on rails中的行为非常相似,但这并不重要。 我要说的是,我的类广泛使用了静态属性继承,特别是用于数据库和表处理。我的问题是,我是否应该使用self ::? 问题答案: 您必须问自己:“我要使用适当的方法来解决问题吗?” 并做两件事。例如或是对当前类的引用,因此在一定范围内进行定义将无法满足对静
问题内容: 我想知道与MySQL中一样的TOP关键字的替代方法。我已经阅读了有关SQL Server中的TOP的信息。 在MySQL中,是否还有其他替代方法,或者在MySQL中,我们可以从中获得相同功能的任何其他方法? 问题答案: 排序和限制结果:
问题内容: 由于Spring能够像EJB一样使用事务。对我来说,Spring能够代替使用EJB的需求。谁能告诉我使用EJB的其他优点是什么? 问题答案: Spring从一开始就被开发为EJB的替代品,因此答案当然是您可以使用Spring代替EJB。 如果说使用EJB有“优势”,我想这将取决于您团队的技能。如果您没有Spring专业知识,并且拥有丰富的EJB经验,那么坚持使用EJB 3.0是一个不错
问题内容: 我正在使用 EclipseLink的JAXB实现的一些非标准扩展,并且要启用该实现,必须使用jaxb.properties对其进行配置。效果很好。 但是,由于生成错误,属性文件未包含在正确的位置,从而导致使用默认的JAXB,该文件没有任何错误,只是继续解析XML文件,忽略了非标准扩展名,给我留下了一个非工作bean。 为了使它更加健壮,我想摆脱属性文件,并在代码中指定上下文配置。由于它
本文向大家介绍它们可以替代HTML5 iframe srcdoc吗?,包括了它们可以替代HTML5 iframe srcdoc吗?的使用技巧和注意事项,需要的朋友参考一下 srcdoc属性指定要在iframe中显示的页面的HTML内容。HTML <iframe>标记用于创建嵌入式框架。 srcdoc 属性的替代方法是: