数据库中保存用户密码,不能用明文保存,需要在后端进行加密,再写入数据库。最开始使用 Java 自带的加密算法,
MD5Encoder.encode(password.getBytes());
发现最后得到的 String 类型的字符串为 null。解决办法是引入 commons-codec 包,利用其 BASE64 算法进行加密。
1 <dependency>
2 <groupId>commons-codec</groupId>
3 <artifactId>commons-codec</artifactId>
4 <version>1.12</version>
5 </dependency>
1 //密码加密
2 private String EncodeByBase64(String str) {
3 //确定计算方法
4 try {
5 String s = new String(Base64.encodeBase64(str.getBytes("UTF-8")) );
6 return s;
7 } catch (UnsupportedEncodingException ex) {
8 ex.getStackTrace();
9 }
10 return null;
11 }