MyBatis实现简单的登录验证功能

利用MyBatis实现简单的登录功能,关键在于构建出MyBatis骨架,并在UserController添加相对应的代码,实现用户登录验证的逻辑。

MyBatis骨架

MyBatis实现简单的登录验证功能_第1张图片

IndexController.java

**
 * 登录接口
 *
 * @param model
 * @param loginData JSON格式的登录信息,可以使用Java类描述,也可以使用Map
 * @return
 */
@RequestMapping(value = {"login.json"})
@ResponseBody
public BaseResult login(HttpServletRequest request,Model model, @RequestBody Map<String, Object> loginData

) {
    //TODO: 从loginData中获取账号和密码,进行验证,根据验证结果返回信息
    BaseResult baseResult=null;
    String name=loginData.get("loginName").toString();
    User u = userService.Sel(name);
    if(u != null){
        //从数据库中获取的密码
        String ps = u.getPassWord();
        //从表单中获取的密码
        String psFromForm = loginData.get("loginPwd").toString();
        System.out.println("user:........"+u.toString());
        if(ps.equals(psFromForm)){
            baseResult = new BaseResult();
            baseResult.setSuccess(true);
            request.getSession().setAttribute("user",u);
        }else{
            baseResult = new BaseResult();
            baseResult.setSuccess(false);
        }
    }

    return baseResult;
}
/**
     * 注销页面
     *
     * @param request
     * @param response
     * @return
     */

    @RequestMapping(value = {"logout.html"})
    public String logout(HttpServletRequest request,
                         HttpServletResponse response) {

        //TODO: 从Session中删除用户信息
        HttpSession session = request.getSession();
        session.setAttribute("user",null);
        return "login";

    }

在UserMapping.xml中注意修改以下两项路径

MyBatis实现简单的登录验证功能_第2张图片

在login.html中添加上οnsubmit="return false"取消自动登录

MyBatis实现简单的登录验证功能_第3张图片

补充:left.html

<div class="user-block-info">
	<a id="gUserNickName" href="javascript:;" class="user-block-name"
          th:text="${session.user==null?'未登录':session.user.userName}">
    a>
div>

你可能感兴趣的:(MyBatis)