我的HTTP配置 <http auto-config="true" access-denied-page="/error/accessDenied.jsp" >

<!-- 不要过滤图片等静态资源 -->
<intercept-url pattern="/**/*.jpg" filters="none" />
<intercept-url pattern="/**/*.png" filters="none" />
<intercept-url pattern="/**/*.gif" filters="none" />
<intercept-url pattern="/**/*.css" filters="none" />
<intercept-url pattern="/**/*.js" filters="none" />

<!-- 登录页面和忘记密码页面不过滤-->
<intercept-url pattern="/login.jsp" filters="none" />
<intercept-url pattern="/jsp/forgotpassword.jsp"  
filters="none" />

<!--登录页面错误-->
<form-login login-page="/login.jsp"
authentication-failure-url="/login.jsp?error=true"
default-target-url="/index.jsp" />

  <logout invalidate-session="true"  
       logout-success-url="/"  
       logout-url="/j_spring_security_logout"/>   <!-- 检测失效的sessionId,超时时定位到另外一个URL-->
<session-management invalid-session-url="/error/sessionTimeout.jsp" />  <!--增加一个自定义的filter,放在FILTER_SECURITY_INTERCEPTOR之前, 实现用户、角色、权限、资源的数据库管理。-->
<custom-filter ref="onionPortalSecurityFilter" before="FILTER_SECURITY_INTERCEPTOR" /> </http>

解决方案 »

  1.   

    在网上看到这个  path-type="regex" 在HTTP配置中加上这个可以实现正则匹配
    但是我加上去了只有硬编码中的可以
    写入数据库中的还是匹配不了
      

  2.   


    你在数据库里面当然不能存储带通配符的URL啦。不能就是不能,楼主倒过来想想就知道了。
      

  3.   


    这个默认也是被忽略的,不过楼主可以自定义匹配规则来完成这个功能。
    不过这个功能好像没有太大的实际用处。
    www.baidu.com你也可以这样来访问www.baidu.com?baidu。用户可以手动修改URL。
      

  4.   

    这个确实是个问题。
    因为好多系统都是 自定义权限系统,把菜单URL存入数据库直接查询,这样只能说是对于部分固定功能的菜单有用比如 某个前缀的都具有这个权限
    /BlackAdmin/newsSectionAction_newsBrowseClumns.action 和
    /BlackAdmin/newsSectionAction_× 万一后面有几百个后缀的,那不是数据库都要输入几百条纪录?怎么解决这样的问题。能使得  固定URL 和  某部分符合的 url 也一样受约束