关于springmvc拦截器的问题 5C

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app 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"
         version="3.0">

  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
  </welcome-file-list>

  <!-- 加载spring容器 -->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:spring/applicationContext-*.xml</param-value>
  </context-param>


  <!--配置DispatcherServlet-->
  <servlet>
    <servlet-name>SpringMVC</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!--SpringMVC配置文件-->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:spring/spring-mvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    <async-supported>true</async-supported>
  </servlet>

  <!--配置DispatcherServlet映射-->
  <servlet-mapping>
    <servlet-name>SpringMVC</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

</web-app>

HomeController

package com.vansl.controller;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
 * @author: vansl
 * @create: 18-3-17 下午11:58
 */
@Controller
public class HomeController {
    //添加一个日志器
    private static final Logger logger = LoggerFactory.getLogger(HomeController.class);

    //映射一个action
    @RequestMapping("/index")
    public  String index(){
        System.out.print(1);
        //输出日志文件
        logger.info("the first jsp pages");
        //返回一个index.jsp这个视图
        return "index";
    }
}

2个文件如上,按照我的理解是启动项目的时候员工是访问index.html 然而启动的时候
访问/却被/index拦截了???,拦截index.html 导致进不去index.html报404是我的常规思想,但是访问/为什么会被/index拦截了呢
而且发现她只会访问 index方法 方法改了名字就不访问了

5个回答


index.html

这个配置就是:服务器启动就访问/index.html请求

index.html

这个配置就是:服务器启动就访问/index.html请求

并不是,如果是的话,我就不会来问了,虽然配置的欢迎页面是index.html,但是她启动的时候会默认访问/index.do 然后走到index..jsp中,断点过了的确有进入那个方法中。而不是访问index.html

1.访问配置跳转静态页面 /index.html (带/后缀)
2.访问配置跳转action index (不带/后缀)

同时添加

servlet name

/index

3.不配置 写一个requestmapping(value="/")的action 默认就会跳到这个action

你的就属于第二种情况 没后缀 跳转 /index

StackTc
StackTc 我配置的是index.html 为什么会跳到index方法里面
接近 2 年之前 回复

/index就是拦截后缀为index的请求

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问