| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- package com.uas.credit.config;
- import com.uas.credit.dao.UserDao;
- import com.uas.credit.model.User;
- import com.uas.credit.util.ContextUtils;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.ui.ModelMap;
- import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import java.io.PrintWriter;
- /**
- * @author liuam
- * @since 2018/6/25 0025 下午 18:27
- */
- public class AuthorizeInterceptor extends HandlerInterceptorAdapter {
- private UserDao userDao;
- {
- userDao = ContextUtils.getBean(UserDao.class);
- }
- @Override
- public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
- String userUUString = request.getParameter("userUU");
- String enUUString = request.getParameter("enUU");
- String password = request.getParameter("password");
- ModelMap modelMap = new ModelMap();
- modelMap.put("success", "false");
- // 判断 userUUString、enUUString、passwordString 是否为数字
- if (!StringUtils.isNumeric(userUUString) || !StringUtils.isNumeric(enUUString)) {
- PrintWriter writer = response.getWriter();
- modelMap.put("message", "userUU 和 enUU 只能为数字");
- writer.print(modelMap);
- writer.flush();
- return false;
- }
- if (password == null) {
- PrintWriter writer = response.getWriter();
- modelMap.put("message", "password 不能为空");
- writer.print(modelMap);
- writer.flush();
- return false;
- }
- long userUU = Long.parseLong(userUUString);
- long enUU = Long.parseLong(enUUString);
- User user = userDao.findByUserUUAndEnUUAndPassword(userUU, enUU, password);
- if (user == null) {
- PrintWriter writer = response.getWriter();
- modelMap.put("message", "用户不存在!");
- writer.print(modelMap);
- writer.flush();
- return false;
- }
- return true;
- }
- }
|