gpt4 book ai didi

java - 使用相同的请求映射重载 spring Controller 方法

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:00:26 26 4
gpt4 key购买 nike

我有一个 session 属性:用户,我有一个 url,我希望登录用户和未以用户身份登录的人都可以查看该 url。

所以我想做的是:

@Controller("myController")
@SessionAttributes({"user"})
public class MyController {

@RequestMapping(value = "/MyPage/{id}", method = RequestMethod.GET)
public ModelAndView getPage(@PathVariable Integer id) {
return modelandview1;
}

@RequestMapping(value = "/MyPage/{id}", method = RequestMethod.GET)
public ModelAndView getPage(@PathVariable Integer id, @ModelAttribute User user){
return modelandview2;
}

但是,我觉得它行不通......非常欢迎提出建议。

最佳答案

您只需要第二种方法,也就是采用 User 参数的方法。当它在没有可用于填充 User 模型的请求属性的情况下被调用时,您将只获得一个具有所有空(或所有默认)字段值的 User 实例,然后在方法的主体中相应地处理每种情况

关于java - 使用相同的请求映射重载 spring Controller 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7716501/

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