Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring4-MVC-URL参数和静态资源路径_Java_Spring_Jsp_Spring Mvc_Spring 4 - Fatal编程技术网

Java Spring4-MVC-URL参数和静态资源路径

Java Spring4-MVC-URL参数和静态资源路径,java,spring,jsp,spring-mvc,spring-4,Java,Spring,Jsp,Spring Mvc,Spring 4,我有一个SpringMVC应用程序,在一个页面中,我在一个表中列出了从数据库获取的“组”详细信息。每个组的url都设置为“/viewgroup/410”,其中410是将从数据库加载并显示在viewgroup.jsp页面中的groupid <td><a href="viewgroup/${group.groupid}">${group.name}</a></td> 像这样。jsp页面无法加载目录结构中的静态资源 +webapp +resourc

我有一个SpringMVC应用程序,在一个页面中,我在一个表中列出了从数据库获取的“组”详细信息。每个组的url都设置为“/viewgroup/410”,其中410是将从数据库加载并显示在viewgroup.jsp页面中的groupid

<td><a href="viewgroup/${group.groupid}">${group.name}</a></td>
像这样。jsp页面无法加载目录结构中的静态资源

+webapp
  +resources
     +css
     +js
     +images
  +views
    +login.jsp
jsp页面的image/js/css路径如下

<link href="resources/css/bootstrap.css" rel="stylesheet" media="screen">
这是用jsp实现的

<link href="viewgroup/resources/css/bootstrap.css" rel="stylesheet" media="screen">


jsp页面加载仍然无法加载静态资源。当我在url中传递参数时,如何在jsp页面中提供静态资源的资源路径?

通过项目的任何url传递查询参数的事实并不影响它处理静态资源的方式。您只需包含一个指向静态资源的链接(例如,作为相对路径),如下所示:

<link href="/resources/css/bootstrap.css" rel="stylesheet" media="screen">

编辑:我的错,我认为Spring MVC+任何视图技术(JSP、Thymeleaf等)都会自动根据web应用程序的根路径解析链接的href,但对于原始HTML来说,这显然是不正确的,因为相对链接的href是根据当前路径解析的。
因此,最终,正如OP所发现的,如果链接是使用当前使用的视图技术处理的(在使用JSP的示例中:

我已经配置了registry.addResourceHandler(“/resources/**”).addResourceLocations(“/resources/”);但是这是可行的,在一开始没有“…”的情况下应该是可行的,但是无论如何,如果它可行:)它是可行的,但是我遇到了另一个问题,这个jsp中包含的header.jsp无法加载静态资源!嗯…你能把密码贴出来吗?另外,请将在JSP页面中解析的bootstrap.css文件的URL作为目标,并将其复制/粘贴到浏览器中,以确保静态资源解析正常工作(URL应类似于,且不应返回404)
<link href="viewgroup/resources/css/bootstrap.css" rel="stylesheet" media="screen">
<link href="/resources/css/bootstrap.css" rel="stylesheet" media="screen">
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
    }