這兩天使用springmvc來做登入,註冊的小demo,其中用到了springmvc***對登入操作進行攔截處理,並對url進行驗證。
驗證通過則可以進行handler的處理,如果驗證不通過直接跳回或者重定向到指定的頁面。
但是在做這個操作的時候,遇到很大的乙個問題就是專案demo中的靜態資源都會在每次請求中被攔截處理了!跳回頁面的時候
頁面就不再是想想中的呈現的樣子了。
以為我在springmvc.xml中已經配置了***和靜態資源的配置卻還是出現這樣的結果,所以就又是看前段瀏覽器的設定,又是看
css檔案,js檔案。最後才鎖定目標是靜態資源的問題,直接在web.xml中使用defaultservlet的方式才解決問題。
下面是我的*****:
//判斷是否在做註冊操作
if(url.indexof("/toadduserpage")>
=0)
//如果時登入使用者則可以進行下一步操作 返回true
} //其他操作直接返回到登入頁面
request.getrequestdispatcher("/web-inf/jsp/user/login.jsp").forward(request, response);
return false;
} 下面是我的springmvc的配置:
[html]
view plain
copy
<
context:component-scan
base-package
="com.ipro.shopping.controller"
/>
<
mvc:annotation-driven
conversion-service
="conversionservice"
>
mvc:annotation-driven
>
<
mvc:interceptors
>
<
mvc:interceptor
>
<
path
="/**"
/>
<
bean
class
="com.ipro.shopping.interceptor.logininterceptor"
>
bean
>
mvc:interceptor
>
mvc:interceptors
>
我把所有的靜態資源都設定成怎樣的形式,可結果還是無法返回正確的答案。
下面是配置web.xml之後的檔案:
預設載入的是/web-inf/servlet名稱-serlvet.xml(springmvc-servlet.xml) -->
<
init-param
>
<
param-name
>
contextconfiglocation
param-name
>
<
param-value
>
classpath:springmvc.xml
param-value
>
init-param
>
servlet
>
注意的是我們配置defaultservlet一定要配置到springmvc的前端控制器(dispatcherservlet)前面才會生效。
上面是我在做登入驗證的時候用到的,僅供參考。目前這個問題只做了一種方案,網上說的有三種可以解決的方案,第一種就是我上面提到的這種
第二種就是在springmvc中配置的方式,只不過我配置的沒有成功。另外一種就是也是使用defaultservlet使用註解的方式配置。
這兩種方式就留在以後在驗證吧,時間太晚,好睏啊!不寫啦,對不住啦!
SpringMVC配置前端控制器後靜態資源無法訪問
問題描述 配置前端控制器後發現css,html,等靜態資源都無法訪問了。試了各種路徑都無法訪問到,在網上搜尋發現是配置的問題。由於spring mvc攔截了所有請求,所以當你設定 class org.springframework.web.servlet.view.internalresourcev...
springboot中css js等靜態資源被攔截
springboot 2.3的版本 會攔截靜態資源。使用 時需新增excludepathpatterns讓所需靜態資源放行 我們自己的css js等靜態資源放在resources static asserts下 而從pom檔案裡面引入的jquery bootstrap放在了webjars下 所以控制...
spring mvc 中靜態資源404 302錯誤
2019 3 22補充 在新的專案中也偶爾遇到資源被攔截的情況 前提我已經設定了各種靜態資源不被攔截的措施 至今仍然沒能找到具體原因,所以在後面的專案採用了下面的dispatcher策略,只有 manager 開頭的請求會走springmvc,其他請求使用預設的分發排程策略。在ssm專案中,已經為靜...