gpt4 book ai didi

java - Spring Controller 请求映射无法正常工作

转载 作者:行者123 更新时间:2023-12-02 13:11:57 24 4
gpt4 key购买 nike

我有一个简单的请求映射,它打开静态文件夹中的 html 文件。当请求映射是像 '/town' 这样的单部分请求时,它可以正常工作,但在像 '/visual/town' 这样的 URL 上不起作用(返回 404)。当我调试时,程序会落到所需的位置。当映射由两个或多个部分组成时,它只是无法识别它指向的文件。这对我来说根本没有意义。

这个有效:

@Controller("VisualHomeController")
public class HomeController {

@RequestMapping(value = "/town")
public String emergentTown() {
return "static/visual/emergent_town.html";
}
}

这个没有:

@Controller("VisualHomeController")
public class HomeController {

@RequestMapping(value = "/visual/town")
public String emergentTown() {
return "static/visual/emergent_town.html";
}
}

这是我的servlet映射,看来问题出现在这里:

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

最佳答案

所以,我发现问题出在 servlet 映射上。

我需要为我的附加 Controller 的第一部分添加另一个 servlet 映射,即 /visual ,如下所示:

<servlet-mapping>
<servlet-name>main</servlet-name>
<url-pattern>/visual/*</url-pattern>
</servlet-mapping>

然后就成功了。因此,每当您想要像 /.../new_page 这样的请求时,您需要将 ... 定义为 servlet 映射。请注意,将主 servlet 映射更改为 /* 不足以实现此目的。

注意:程序在调试时为什么会陷入return ...,这仍然没有意义。我的意思是,如果还需要一个 servlet 映射,前端 Controller 如何将请求路由到该方法?这样做为什么不能解决 View ?

关于java - Spring Controller 请求映射无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43917519/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com