Spring MVC前臺使用html頁面作為檢視,配置靜態資源後Controller控制器不起作用的解決辦法
阿新 • • 發佈:2019-02-03
1.Spring MVC搭建專案的時候,想使用html頁面作為前端的檢視,你會發現html頁面不能訪問,原因是由於Spring攔截器將其攔截尋找控制器的緣故,解決辦法就是配置靜態資源:
1 <mvc:resources mapping="/js/*.js" location="/js/" /> 2 <mvc:resources mapping="/**/*.html" location="/html/" /> 3 <!-- <mvc:resources location="/" mapping="/**/*.html"/> 4 <mvc:resources location="/" mapping="/**/*.js"/> 5<mvc:resources location="/" mapping="/**/*.css"/> 6 <mvc:resources location="/" mapping="/**/*.png"/> 7 <mvc:resources location="/" mapping="/**/*.gif"/> -->
註釋和未註釋的是兩種配置建議。
2.配置之後發現html可以訪問了,但是,控制器又失效了,原因是沒有加入註解驅動,所以加起來最終的配置是加入:
1 <mvc:annotation-driven/> 2 3 <!-- 靜態資源 --> 4<mvc:resources mapping="/js/*.js" location="/js/" /> 5 <mvc:resources mapping="/**/*.html" location="/html/" /> 6 <!-- <mvc:resources location="/" mapping="/**/*.html"/> 7 <mvc:resources location="/" mapping="/**/*.js"/> 8 <mvc:resources location="/" mapping="/**/*.css"/> 9 <mvc:resources location="/" mapping="/**/*.png"/> 10<mvc:resources location="/" mapping="/**/*.gif"/> --> 11 <!-- -->
這樣就可以訪問靜態資源,且控制器不受影響。