当前位置: 首页 > 知识库问答 >
问题:

获取静态资源spring mvc

葛永丰
2023-03-14


我知道网上有很多这样的问题(特别是这里),但没有什么能真正帮助我解决问题。我正在使用spring mvc(spring version 3.1.0 Release)并且我想通过URL访问我的静态数据。
我的包:
-src
--main
---resources
----public
在public内部,我有一个test.xml文件。
这是我的web.xml

<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring/ApplicationContext.xml</param-value>
    </context-param>
<servlet>
        <servlet-name>appServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring/appServlet/ServletContext.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>appServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

这是我的ServletContext.xml

<!-- Enables the Spring MVC @Controller programming model -->
    <annotation-driven />

    <!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources directory -->
    <resources mapping="/resources/public/**" location="/resources/public/" />


现在,当我输入这个url“localhost:8080/bmark-central/resources/public/test.xml”时,我得到一个404。我在没有上下文根“localhost:8080/resources/public/test.xml”的情况下尝试了它,但也没有得到test.xml(也得到了404)。我是不是画错了什么?我是不是漏了什么?提前致谢:)

共有1个答案

寇景明
2023-03-14

问题可能是静态资源应该是相对于您的Web内容的--因此它们应该在这个文件夹中才能访问-src/main/webapp/resources/public而不是src/main/resources

 类似资料:
  • 更新:我想让媒体播放器是静态的,但是如果我设置为静态的,它就不工作了。请注意,我想要mediaPlayer static的原因是我想从其他类访问它。(台词评论。)这是我的代码: 我的代码的任何其他修复将不胜感激。顺便说一下,这些是我得到的错误: 线程“Thread-0”中出现异常Java . lang . illegalstateexception:Toolkit未在com . sun . Jav

  • 每个网站都需要静态资源:图片、样式表、网站图标(favicon)等。在这种情况下,您可以在项目的根目录下创建一个名为 static 的目录。 放入 该目录中的每个文件都将被复制到 生成的 build 文件夹中,并保留目录的层级结构。例如,如果您将名为 sun.jpg 的文件添加到 static 文件夹中,则该文件将被复制到 build/sun.jpg 路径。 这意味着: 对于 baseUrl: '

  • 本文向大家介绍Android中获取资源 id 及资源 id 的动态获取,包括了Android中获取资源 id 及资源 id 的动态获取的使用技巧和注意事项,需要的朋友参考一下  Android中获取资源 id 及资源 id 的动态获取 我们平时获取资源是通过 findViewById 方法进行的,比如我们常在onCreate方法中使用这样的语句: findViewById是我们获取layout中各

  • JS 代码中引用媒体文件 可以直接在代码中使用 ES6 的 import 语法引入文件并在 JSX 中使用,目前仅支持图片类型的媒体文件。 JSON 中引用媒体文件 当你需要在 app.json 中配置使用的本地媒体文件(比如导航栏图片地址)时,可以将使用到的媒体文件放置到 src 下的某个目录下,并在 build.json 中将其配置到 constantDir 字段的数组中,示例如下: {

  • 相关: 公共基础路径 相关: assetsInclude 配置项 将资源引入为 URL 服务时引入一个静态资源会返回解析后的公共路径: import imgUrl from './img.png' document.getElementById('hero-img').src = imgUrl 例如,imgUrl 在开发时会是 /img.png,在生产构建后会是 /assets/img.2d8e

  • 所有的Markdown文件都通过Vite处理编译成Vue组件。你可以并且应当使用相对URL引用静态资源。 ![An image](./image.png) 你可以在你的Markdown文件、主题中的*.vue组件、样式和纯.css文件使用绝对公共路径(基于项目根目录)或相对路径(基于你的文件系统)。如果你使用过vue-cli或webpack的file-loader,后者更符合你的习惯。 常见的图