发表于: 2017-07-24 22:16:53
1 914
今天完成的事情:
今天理解了拦截器,知道其实现方法,其实很简单,只不过是我脑子没转过来而已,
拦截器是把你发出的请求进行拦截,然后处理,验证用户权限的时候可以加一个拦截器,如下:
<mvc:interceptors>
<mvc:interceptor>
<!-- 匹配的是url路径, 如果不配置或/**,将拦截所有的Controller -->
<mvc:mapping path="/**" />
<mvc:exclude-mapping path="/register"/>
<mvc:exclude-mapping path="/register/**"/>
<bean class="com.fanchen.util.LoginInterceptor"></bean>
</mvc:interceptor>
<!-- 当设置多个拦截器时,先按顺序调用preHandle方法,然后逆序调用每个拦截器的postHandle和afterCompletion方法 -->
</mvc:interceptors>
/**是拦截所有的请求
在拦截所有请求的情况下添加不拦截的请求,就需要用:
<mvc:exclude-mapping path="/xxx"/>
xxx表示不需要拦截的页面
然后就是:
<bean class="com.fanchen.util.LoginInterceptor"></bean>
这个类是拦截器的实现类
拦截请求后需要做一些操作比如验证Cookie是否有效
拦截器有三个接口,分别是:preHandle postHandle afterCompletion等
preHandle 用我的话说就是拦截请求后执行的,判断Cookie就是在这个类里写
postHandle 是在加载界面的时候执行
afterCompletion 是在页面加载完成后执行,一般用来清除缓存
如何判断Cookie是否有效,我写了个思维导图如下:
因为Cookie是在register页面生成的所以,如果Cookie无效跳转到register页面
如何判断Cookie是否有效呢?
因为Cookie是你加密的,所以如果Cookie可以被解密就说明是有效的!
一些然后还可以根据Cookie的内容进行判断用户是否拥有某些权限
明天再贴效果图,如果有不对的地方麻烦请师兄指正
收获:
粗略理解了拦截器和Cookie
遇到的问题:
我在测试中Cookie生成出错了,可能是CookieUtil类的问题
明天的计划:
继续Task5
评论