上一篇博文搭好了整个项目的架构,现在就可以写东西了,这篇博文主要是总结一下如何通过Shiro验证来实现博主的登录功能。
1. 完善博主信息表
博主信息表中除了用户名密码外,应该还有博主的个人信息,昵称,头像,个性签名等等信息,所以首先要完善一下数据库中的博主信息表t_blogger,字段如下:
因为个人博客就一个博主,所以我顺便向这张表中添加一下自己的登陆信息:
密码是通过md5加密算法生成的一段比较长的字符串,我直接存了进去,当登陆的时候,在程序中也需要先使用md5算法对密码进行加密,然后与数据库中存的这个进行对比。博主信息和头像暂时没有放数据,等后面用到了再弄。弄好了数据库的表,然后对应的实体类也要完善下,我就不写了。
2. md5加密工具类
接下来把加密的工具类写了,使用的是Shiro中的md5加密算法,除了传进去要加密的密码外,还需要传进去一个字符串(俗称为“盐”),然后Shiro会结合这两个一起加密,我也不知道为啥叫盐,反正英文单词就是盐的意思,估计是想给密码加点料吧,这样更好吃一点,加密后更安全。
/**
* md5加密工具类
*@author Administrator
*
*/
public class CryptographyUtil {
/**
*@Description 使用Shiro中的md5加密
*@param str
*@param salt
*@return
*/
public static String md5(String str,String salt){
//Md5Hash是Shiro中的一个方法
return new Md5Hash(str, salt).toString();
}
//我自己生成一下测试用的
public static void main(String[] args) {
String password="123456";
System.out.println("M