猿问

web.xml配置springMVC,把init-param删掉也能正常?

 <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:springmvc-servlet.xml</param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
  

改为

 <servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

访问页面也正常。。
我的springmvc-servlet.xml放在WEB-INF文件夹下的。
但是,我把servlet-name名称改掉就报错了。这为什么啊?
难道servlet-name会自动匹配文件?

倚天杖
浏览 1792回答 2
2回答

蝴蝶刀刀

**配置有两种方式:方式一:当你放在src下面的话,配置<init-param>时:<init-param>配置的作用是DispatcherServlet的一个初始化参数,即SpringMVC配置文件的位置和名称 方式二:当你放在WEB-INF下的话可以不用<init-param>配置,使用SpringMVC的默认配置,但是名称是有要求的,命名要求:<servlet-name>-servlet.xml 我觉得你换名出错的原因应该是命名的问题,恰好名称有个servlet,哈哈 比如你现在是: <servlet-name>springmvc</servlet-name>那么你放在WEB-INF下的话,你的那个xml文件名应该是springmvc-servlet.xml**

隔江千里

去掉了<init-param></init-param>后你的springmvc文件名应该为<servlet-name>-servlet.xml 你要注意文件名servlet-name一定要和<servlet-name>一致
随时随地看视频慕课网APP

相关分类

Java
我要回答