springmvc笔记-3-静态资源的访问
来源:互联网 发布:英雄联盟知乎 编辑:程序博客网 时间:2024/06/05 10:42
不拦截静态资源:
在restful 风格下springMVC会进行如下配置:
<servlet> <!-- classpath:WEB-INF/springmvcNote1-servlet.xml --> <!-- servlet的名称 --> <servlet-name>springmvcNote1</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet </servlet-class> <!-- 下面配置类servlet的参数信息 在这里配置了xml 那就必须加上springmvcNote1-servlet.xml 应该是覆盖了 - contextConfigLocation是参数名称 该参数值param-value包含了springmvc配置文件的路径 --> <!-- <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </init-param> --> <init-param> <param-name>contextConfigLocation</param-name> <!-- <param-value>classpath:applicationContext.xml,/WEB-INF/springmvcNote1-servlet.xml</param-value> --> <param-value>/WEB-INF/springmvcNote1-servlet.xml</param-value> </init-param> <!-- web应用启动时立即加载servlet --> <load-on-startup>1</load-on-startup> </servlet> <!-- servlet的映射申明 --> <servlet-mapping> <!-- 对应的servlet名称 --> <servlet-name>springmvcNote1</servlet-name> <!-- 监听当前域的所有请求 --> <url-pattern>/</url-pattern> </servlet-mapping>
上面是配置DispatcherServlet控制器:
很明显/会拦截所有请求,所以静态资源无法访问到。
解决方法一:激活 Tomcat 的 defaultServlet 来处理静态资源 ,不过必须放在DispatcherServlet映射的前面
<servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.png</url-pattern> <url-pattern>*.jpg</url-pattern> <!--下面可以配置多个-> </servlet-mapping> <!-- servlet的映射申明 --> <servlet-mapping> <!-- 对应的servlet名称 --> <servlet-name>springmvcNote1</servlet-name> <!-- 监听当前域的所有请求 --> <url-pattern>/</url-pattern> </servlet-mapping>
此时在WebContent便可创建静态资源文件了
在springmvc的配置文件中配置:
<bean id="bresource" class="com.core.TmBasePathExposer" init-method="init"></bean>
便可在写静态资源文件的路径的时候这样写(暂时只知道这么用)
<img alt="" src="${basePath}/images/aaa.png">
TmBasePathExposer对应的代码
package com.core;import javax.servlet.ServletContext;import org.springframework.web.context.ServletContextAware;/** * * 获取服务器的根目录 * @version 1.0.0 * */public class TmBasePathExposer implements ServletContextAware { private ServletContext servletContext; private String basePath; public void init() {// String version = "1.0"; getServletContext().setAttribute("basePath",getServletContext().getContextPath() ); } public ServletContext getServletContext() { return servletContext; } public String getBasePath() { return basePath; } public void setServletContext(ServletContext servletContext) { this.servletContext = servletContext; }}
阅读全文
0 0
- springmvc笔记-3-静态资源的访问
- springMVC(13)------springMVC静态资源的访问
- SpringMVC访问静态资源
- SpringMVC访问静态资源
- springMVC访问静态资源
- springMVC 访问 静态资源
- SpringMVC访问静态资源
- Springmvc访问静态资源
- SpringMVC访问静态资源
- SpringMVC访问静态资源
- SpringMVC访问静态资源
- SpringMVC访问静态资源
- SpringMVC访问静态资源
- SpringMVC访问静态资源
- SpringMVC访问静态资源
- SpringMVC访问静态资源
- Springmvc 静态资源访问
- springMVC静态资源访问
- 扩展欧几里德算法
- LeetCode 461. Hamming Distance
- springmvc牛刀小试
- 编译原理:(一)
- Java NIO通道Channel的原理与获取
- springmvc笔记-3-静态资源的访问
- D. Lakes in Berland(dfs好题)
- Java学习第十一天
- 将word中的所有mathtype公式统一设置格式
- 经典英文电影及其台词、经典英文书
- CRM的dev(零)--客户关系系统的序言
- swing平滑曲线图
- NEUOJ 1211 MJF wants to work (与区间相关的贪心)
- 关于数值统计的几个算法