我正在学习Spring mvc框架。这是视图部分的一些代码片段。
<a href="/main?logout">Log out</a>
以我的理解,当我点击这个链接时,我会向服务器中的路径(/main)发送一个HTTP GET请求,并带有请求参数
logout
,对吧?
(假设有一个相应的控制器来处理GET请求)
我在控制器中使用字符串捕获
logout
的值,点击后发现它不为空。
那么,它的价值是多少?如果请求参数没有以logout
这样的
key=value格式给出,是否是某个默认值?
如果单击时没有为注销分配值注销。那么当使用 @RequestParam 读取时,带有 get 调用的 spring mvc 控制器将具有注销的默认值作为空字符串(即“”)。
示例:在下面的代码中,它将打印输出,因为注销参数值为空,因为如果块为 true,则注销字符串为空。
@GetMapping("/main")
public String handlingLogout(@RequestParam(value = "logout", required = false) String logout) {
if (logout.isEmpty()) {
System.out.println("Logout parameter value is empty" + logout);
}
return "main";
}
输出: 注销参数值为空