springMVC 静态文件 访问

1. 新建web project

2. 导入所需jar包

3. 更改web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  <display-name></display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

  <servlet>
  	<servlet-name>springMVC</servlet-name>
  	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  	<init-param>
  		<param-name>contextConfigLocation</param-name>
  		<param-value>classpath*:config/spring-servlet.xml</param-value>
  	</init-param>
  	<load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
  	<servlet-name>springMVC</servlet-name>
  	<url-pattern>/</url-pattern>
  </servlet-mapping>

</web-app>

4. 创建config 包, 新建spring-servlet.xml, 添加如下语句

  <mvc:resources location="/img/" mapping="/img/**"/>

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="
           http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-3.0.xsd
           http://www.springframework.org/schema/mvc
           http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> 

     <context:component-scan base-package="com.tgb.web.controller" />     

     <bean name="/test1/img" class="com.tgb.web.controller.StaticController">
    	<property name="methodNameResolver">
    		<ref bean="paramMethodResolver"/>
    	</property>
    </bean>

    <!-- 静态资源访问 -->
    <mvc:resources location="/img/" mapping="/img/**"/>
    <bean id="paramMethodResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
    	<property name="paramName" value="do"></property>
    </bean>

    <!-- ViewResolver 视图解析器 -->
    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

</beans>

 5. 新建controller包, com.tgb.web.controller,                              新建StaticController.java

package com.tgb.web.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;

public class StaticController extends MultiActionController{
	public ModelAndView img(HttpServletRequest request, HttpServletResponse response){
		return new ModelAndView("/staticFile");
	}
}

6. 新建staticFile.jsp, 目录在webroot下

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>My JSP ‘staticFile.jsp‘ starting page</title>
  </head>

  <body>
      <h> 图片访问 </h> <br>
      <div>
      	<img alt="图片" src="${pageContext.request.contextPath}/img/a.jpg">
      </div>
  </body>
  </body>
</html>

7. webroot下新建img文件夹, 放入a.jpg文件

8. IE输入网址测试

http://localhost:8080/springMVC2/test1/img?do=img

  

  

时间: 2024-08-24 07:49:17

springMVC 静态文件 访问的相关文章

【springMVC】之静态文件访问

上篇博客介绍了springMVC参数的传递,今天我们来说说springMVC静态文件的访问.我们所说的静态文件通常是指只有文本或图片,且不会通过后台的控制来更改的元素.如果可以通过后台控制就不属于静态文件了.我们这里要讲一下图片.js文件. 我们首先来说springMVC是如何访问图片的.首先先建目录,建img.js.css目录,这三个目录是最基础的东西. 然后创建一个jsp页面. <body> <h>图片访问</h> <div> <img alt=&

zbb20170726 spring访问静态文件访问

静态文件目录 web.xml拦截方式  / <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <!-- 默认/WEB-INF/[servlet名字]-servlet.xml加载上下文, 如果配置了

NodeJS静态文件访问性能测试

受益于JavaScript语言优秀特点,使NodeJS开发服务端应用很方便,配合NPM官方提供的大量第三方组件,让NodeJS更加如虎添翼.最近,需要使用NodeJS做一个服务端HTML5的游戏服务器,应用实现包含两大部分:一部分做HTTP服务器为客户端发送html.image.javascript等游戏资源文件:另一部分使用了socket.io实时响应玩家的操作.技术实现并不困难,但要实现一个轻量.稳定.流畅的HTTP静态文件服务器,还是需要花些心思的. 本文笔者对现有一些HTTP服务器的实现

VUE打包好的文件部署让beego实现静态文件访问,如何用根目录来访问静态文件?

最近的一个全栈项目,光伏云监控系统,后端使用beego框架,纯api,前端使用VUE2.0.项目地址:http://scada.ssechina.com:88/static 我把打包好的前端文件放到go的static目录, 然后main里面设置 beego.BConfig.WebConfig.StaticDir["/static"] = "static"只能用ip/static/login.html来访问 如果改成beego.BConfig.WebConfig.St

6.访问日志静态文件,访问日志切割,静态元素过期时间

[toc] 10.22 访问日志不记录静态文件 很多网站大多为静态网页,网页内部的图片.css文件等同样有其网址链接,如果不设置,这些无效的信息也将被存入访问日志中,会导致访问日志文件大小快速增加,占用大量存储空间.我们可以通过设置不记录某些文件来减少无效信息,节省内存资源. 1. 编辑虚拟主机配置文件 [[email protected] ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf </IfModule> ErrorLo

nginx日志不记录静态文件访问和缓存

nginx访问日志nginx和apache的访问日志一样可以记录的指定信息,如记录服务器时间,访问的客户端ip.访问的url和访问状态码等信息,这些信息会规律的记录到访问日志中主配置文件中定义的日志格式,记录的格式参数解释如下 $remote_addr ? ? ? ? ? ? ? ? ? 客户端访问IP(公网IP) $http_x_forwarded_for ? ? ? ? ? 记录代理服务器的IP $time_local ? ? ? ? ? ? ? ? ? ? 日志中服务器本地时间 $host

Nginx修改静态文件访问路径

外网用户访问服务器的 Web 服务由 Nginx 提供,Nginx 需要配置静态资源的路径信息才能通过 url 正确访问到服务器上的静态资源.打开 Nginx 的默认配置文件 vim /usr/local/nginx/conf/nginx.conf 将service中添加如下配置 root 静态文件根路径 示例代码:/etc/nginx/nginx.conf user nobody nobody; worker_processes 2; error_log /usr/local/nginx/lo

非常诡异的IIS下由配置文件加上svg的mime头导致整个网站的静态文件访问报错误

调试了两天遇到一个非常诡异的问题 一个系统稳定运行了很多年,是用mvc5+WIN2008R2  + .NET 4.5 +IIS环境下运行,非常稳定,最近想迁移到一台新的服务器,为了少麻烦在阿里云上买了一台同样环境的WINDOWS 2008 R2 ,把程序部署上去后报了十分诡异的错误. 1.部署新服务器后,全部动态程序运行正常,但是所有静态文件无法加载(图片,css,js,html)纯静态访问全部报500错误(无法显示页面,因为发生内部服务器错误) 最后定位到了问题原因,原来在web.config

spring mvc静态文件访问

当web.xml文件中如下配置时,spring mvc会无法访问静态资源文件 <!-- 配置spring mvc 的核心servlet --> <servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> &