关于springmvc的配置

发布于 2021-11-28 15:30:26 字数 2857 浏览 846 评论 10

项目是spring+springmvc+mybatis,基于maven构建的,一开始用的是jetty,用着用着出了问题,静态资源有时候访问不到。我的web.xml配置如下:

<web-app>
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath*:spring.xml,classpath*:spring-mybatis.xml</param-value>
  </context-param>

  <filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>utf-8</param-value>
    </init-param>
    <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

  <!-- 防止spring内存溢出监听器 -->
  <listener>
    <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
  </listener>

  <servlet>
    <servlet-name>rest</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>
        classpath*:spring-mvc.xml
      </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>rest</servlet-name>
    <url-pattern>*.htmls</url-pattern>
  </servlet-mapping>

  <!-- 配置session超时时间,单位分钟 -->
  <session-config>
    <session-timeout>30</session-timeout>
  </session-config>
</web-app>



项目结构如下:

照着网上说法,在springmvc的配置文件中加上

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

结果连页面都找不到了,直接404

然后再换

<url-pattern>*.htmls</url-pattern>
为:

<servlet-mapping>
    <servlet-name>rest</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
问题差不多的。

请问下我到底哪里配错了,究竟该如何配置,我总感觉自己搭的这个项目有问题。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(10

看透却不说透 2021-12-02 06:17:49

引用来自“fajar”的评论

在Spring核心控制器的映射那里,也就是你的

    <servlet-mapping>
        <servlet-name>rest</servlet-name>
        <url-pattern>*.htmls</url-pattern>
    </servlet-mapping>

    改为

    <servlet-mapping>
        <servlet-name>rest</servlet-name>
        <url-pattern>/menu/*</url-pattern>
    </servlet-mapping>

    同时注意,你页面上访问静态资源的部分使用绝对路径,并有相关Controll进行处理

卸妝后依然美 2021-12-02 06:17:48

在Spring核心控制器的映射那里,也就是你的

    <servlet-mapping>
        <servlet-name>rest</servlet-name>
        <url-pattern>*.htmls</url-pattern>
    </servlet-mapping>

    改为

    <servlet-mapping>
        <servlet-name>rest</servlet-name>
        <url-pattern>/menu/*</url-pattern>
    </servlet-mapping>

    同时注意,你页面上访问静态资源的部分使用绝对路径,并有相关Controll进行处理

陌若浮生 2021-12-02 06:17:23

引用来自“Happy猪猪”的评论

你的访问地址是什么 (后缀)

青萝楚歌 2021-12-02 06:14:45

总结一下问题:

加了

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

就报404,连页面就找不到。

不加的话能进入页面,但是静态资源访问不到。

坐在坟头思考人生 2021-12-02 05:35:31

你的访问地址是什么 (后缀)

风苍溪 2021-12-02 05:04:46

引用来自“Happy猪猪”的评论

看tomcat启动时,报什么错 !!!把那个错粘出来

顺便问一下 你这是用的什么开发工具

小瓶盖 2021-12-02 04:05:11

引用来自“小艺术家被占用了”的评论

prefix、suffix配置了没?

只为守护你 2021-12-01 23:12:17

看tomcat启动时,报什么错 !!!把那个错粘出来

顺便问一下 你这是用的什么开发工具

醉生梦死 2021-12-01 14:11:46

prefix、suffix配置了没?

终陌 2021-11-29 07:45:16

用tomcat也有问题。帮顶

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文