SpringMVC访问静态资源实例讲解

      林炳文Evankaka原创作品。转载请注明出处http://blog.csdn.net/evankaka

       本文要以一个例子来说明SpringMVC访问静态资源

     

        /images /**映射到 ResourceHttpRequestHandler 进行处理,location指定静态资源的位置.可以是web application根目录下、jar包里面,这样可以把静态资源压缩到jar包中。cache-period可以使得静态资源进行web cache
       如果出现下面的错误,可能是没有配置 的原因。
报错WARNING: No mapping found for HTTP request with URI [/mvc/user/findUser/lisi/770] in DispatcherServlet with name 'springMVC'

        使用 元素,把 mapping 的 URI 注册到 SimpleUrlHandlerMapping的urlMap 中,key 为 mapping 的 URI pattern值,而 value为 ResourceHttpRequestHandler,
这样就巧妙的把对静态资源的访问由 HandlerMapping 转到 ResourceHttpRequestHandler 处理并返回,所以就支持 classpath 目录, jar 包内静态资源的访问.
另外需要注意的一点是,不要对 SimpleUrlHandlerMapping 设置 defaultHandler. 因为对 static uri 的 defaultHandler 就是ResourceHttpRequestHandler,

否则无法处理static resources request.

下面用一个例子来说明用法

本文工程免费下载

1、在eclipse中新建一个web工程、

然后导入如下包:


2、配置web.xml



MyDispatcherorg.springframework.web.servlet.DispatcherServlet  contextConfigLocation/WEB-INF/spring-servlet.xml  1MyDispatcher/

3、然后是控制器:

package com.mucfc;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;@Controller
public class StaticFileController {@RequestMapping(value="/image/test")public ModelAndView img(HttpServletRequest request,HttpServletResponse response){System.out.println("-----img-------");return new ModelAndView("image");}@RequestMapping(value={"/index","/"})//相对于根目录的路径public String test2() {return "index";//指定页面要跳转的view视图路径}
}

4、启动注解:

      
5、在WEB-INF新建一个目录views,并添加一个index.jsp和image.jsp

其中index.jsp:

<%@ page language="java" contentType="text/html; charset=gb2312"pageEncoding="gb2312"%><%  String path = request.getContextPath();  String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  %>   


   

Insert title here


采用String返回视图:访问图片 

和image.jsp如下内容:

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>




Insert title here

图片
图片

6、在WebContent新建一个目录,取名img,专门用来存放图片:

把图片考进去。

整个工程目录 如下:



8、接下来就运行了:

可以通过这里点击进去看图片,也可以直接输入http://localhost:8080/SpringMVCLearningChapter2_1/image/test

本文工程免费下载


      林炳文Evankaka原创作品。转载请注明出处http://blog.csdn.net/evankaka


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部