shiro配置文件的路径授权更换成后台数据库配置实现
1.shiro之所以能对请求进行拦截判断,是因为shiro配置文件配置需要拦截的路径,以及对应的认证授权bean如下:
2.随着项目的日渐庞大,配置文件中需要配置的过滤器越来越多(不同路径访问控制权限不同),就需要把同类过滤的配置到数据库中,我是用的拦截器当然可以使用过滤器(因为我需要在某些拦截器之后执行获取必要参数)。
在springMVC配置文件中配置拦截器:拦截所有请求,下面配置是放行部分请求
3.拦截器代码如下:
通过request 获取所需路径进行判断,下面给大家附上request获取各种路径的方法:
1、request.getRequestURL()
返回的是完整的url,包括Http协议,端口号,servlet名字和映射路径,但它不包含请求参数。
2、request.getRequestURI()
得到的是request URL的部分值,并且web容器没有decode过的
3、request.getContextPath()
返回 the context of the request.
4、request.getServletPath()
返回调用servlet的部分url.
5、request.getQueryString()
返回url路径后面的查询字符串
示例:
当前url:http://localhost:8080/CarsiLogCenter_new/idpstat.jsp?action=idp.sptopn
request.getRequestURL()-----http://localhost:8080/CarsiLogCenter_new/idpstat.jsp
request.getRequestURI()----- /CarsiLogCenter_new/idpstat.jsp
request.getContextPath()----/CarsiLogCenter_new
request.getServletPath()---- /idpstat.jsp
request.getQueryString()---action=idp.sptopn
如有其它更好建议或者不同意见欢迎留言或者入群探讨: