本篇为系列文,不以目的为目的,以学习为目的。旨在学习,重在研究。
最终版:SSM拦截器校验JSON数据(3) -- 解决拦截器获取json后,controller参数为空
需求:
前后台系统对接,每个接口都要判断appkey和apppassword是否正确(类似于token)。即使写了公共方法每个接口都做判断太麻烦了,于是想到了用拦截器。在拦截器中首先要获取json数据,然后做判断。
设置拦截器:
创建AccountInterceptor 实现 HandlerInterceptor 接口
package sinosoft.project.sso.account.interceptor;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
/**
* @Description: 账号拦截器,判断appkey和apppassword
*/
public class AccountInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
// TODO Auto-generated method stub
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
throws Exception {
// TODO Auto-generated method stub
}
}
在spring-mvc的配置文件中注册:
<!-- 注册拦截器 -->
<!--拦截器-->
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/sso/account/**" /> <! --拦截路径 -- >
<bean class="sinosoft.project.sso.account.interceptor.AccountInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
<mvc:mapping path="/sso/account/**" /> :对/sso/account/**的请求拦截校验
<bean class="sinosoft.project.sso.account.interceptor.AccountInterceptor"> :使用AccountInterceptor类做拦截
下一篇:获取json数据做检验