我可以为 spring 中的所有页面做一个 GetMapping 吗
Can I do one GetMapping for all pages in spring
我对 Spring 引导中的 @GetMapping
有疑问。
如果我有 20 个静态网页作为 .html
文件。我可以只使用一个 @GetMapping
来获取每一页吗?
例如:
@GetMapping("/{static_webpages}")
public String getWeb() { return "{static_webpages}";}
然后,当路径变为/page1
时,将获取第1页,依此类推。
正在从URL中提取网页名称。
通过向您的方法添加参数并使用 @PathVariable
注释对其进行注释,您可以提取网页名称。
@GetMapping("/{static_webpage}")
public String getWeb(@PathVariable("static_webpage") String webpage) {
...
}
Return 网页而不是 return 字符串
您可能不希望 return 以字符串形式显示网页内容。
通过使用 ModelAndView
对象作为方法的 return 类型,您的方法将 return 一个合适的网页。
@GetMapping("/{static_webpage}")
public ModelAndView getWeb(@PathVariable("static_webpage") String webpage) {
...
}
现在我们可以构建 ModelAndView
对象以重定向到给定的网页。
@GetMapping("/{static_webpage}")
public ModelAndView getWeb(@PathVariable("static_webpage") String static_webpage) {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("webpages/" + static_webpage);
return modelAndView;
}
在此示例中,静态网页保存在 resources/static/webpages
目录中,以便将它们分组到一个目录中。
如果您不想将它们分组到一个目录中,您可以只会将它们存储在 resources/static/
,但您必须小心,因为 ModelAndView
对象随后会尝试加载自己的剩余端点,这会导致错误。
[可选] 删除 url
中所需的 html 扩展
在您的 application.properties
中使用 spring.mvc.view.suffix
属性 您可以提供一个后缀,该后缀附加到您创建的每个 ModelAndView 网页上。
spring.mvc.view.suffix = .html
这意味着不必访问网页 /myexamplepage.html
您只需要访问 /myexamplepage
.
资源
我对 Spring 引导中的 @GetMapping
有疑问。
如果我有 20 个静态网页作为 .html
文件。我可以只使用一个 @GetMapping
来获取每一页吗?
例如:
@GetMapping("/{static_webpages}")
public String getWeb() { return "{static_webpages}";}
然后,当路径变为/page1
时,将获取第1页,依此类推。
正在从URL中提取网页名称。
通过向您的方法添加参数并使用 @PathVariable
注释对其进行注释,您可以提取网页名称。
@GetMapping("/{static_webpage}")
public String getWeb(@PathVariable("static_webpage") String webpage) {
...
}
Return 网页而不是 return 字符串
您可能不希望 return 以字符串形式显示网页内容。
通过使用 ModelAndView
对象作为方法的 return 类型,您的方法将 return 一个合适的网页。
@GetMapping("/{static_webpage}")
public ModelAndView getWeb(@PathVariable("static_webpage") String webpage) {
...
}
现在我们可以构建 ModelAndView
对象以重定向到给定的网页。
@GetMapping("/{static_webpage}")
public ModelAndView getWeb(@PathVariable("static_webpage") String static_webpage) {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("webpages/" + static_webpage);
return modelAndView;
}
在此示例中,静态网页保存在 resources/static/webpages
目录中,以便将它们分组到一个目录中。
如果您不想将它们分组到一个目录中,您可以只会将它们存储在 resources/static/
,但您必须小心,因为 ModelAndView
对象随后会尝试加载自己的剩余端点,这会导致错误。
[可选] 删除 url
中所需的 html 扩展在您的 application.properties
中使用 spring.mvc.view.suffix
属性 您可以提供一个后缀,该后缀附加到您创建的每个 ModelAndView 网页上。
spring.mvc.view.suffix = .html
这意味着不必访问网页 /myexamplepage.html
您只需要访问 /myexamplepage
.