maven打包忽略静态资源解决办法,dispatchServlet拦截静态资源请求的解决办法
问题:
maven 打包时,有的文件打不进去target
解决:
因为maven打包默认打Java文件。在项目中的pom文件中加build标签
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<!-- 是否替换资源中的属性-->
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>
参考地址:
http://blog.csdn.net/jgj0129/article/details/53112738
静态资源拦截与访问:
当在web.xml中配置DispatcherServlet时,标签url-pattern值/时,会拦截所有请求,包括静态资源,解决办法:
一、激活容器的defaultServlet来处理静态资源
例:(tomcat)
1 2 3 4 | <servlet-mapping> <servlet-name> default </servlet-name> <url-pattern>*.jpg</url-pattern> </servlet-mapping> |
二、利用spring-mvc mvc:resource
例:
1 | <mvc:resources mapping= "/images/**" location= "/images/" /> |
三、利用spring-mvc mvc:default-servlet-handler
例:在spring-mvc.xml中加入
1 | <mvc: default -servlet-handler/> |
参考文章:
http://www.cnblogs.com/caoyc/p/5639078.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步