Shiro中的普通密码和加密密码不匹配

时间:2014-01-25 18:16:17

标签: java shiro

public void doRegister() throws SQLException{ 
    String password = "test";
    PasswordService dps = new DefaultPasswordService(); 
     String temp = dps.encryptPassword(password); 
     System.out.println("AAAA  "+dps.passwordsMatch(password, temp)); 

} 

这输出AAAA false

有什么问题?

1 个答案:

答案 0 :(得分:2)

我解决了这个问题。我的默认语言环境是TR_tr。当我在不更改默认语言环境的情况下运行程序时,它会输出false

但是当我按如下方式运行程序时(它将默认语言环境设置为ENGLISH),它会输出true

public class App { 
    public static void main(String[] args) { 
        PasswordService psd = new DefaultPasswordService(); 
        String password = "333"; 
        String enc = psd.encryptPassword(password); 
        Locale.setDefault(Locale.ENGLISH); 
        System.out.println(Locale.getDefault()); 
        System.out.print(psd.passwordsMatch(password, enc)); 

    } 
}