我正在尝试开发一个Spring MVC应用程序,现在我遇到了一个问题.登录成功后,我将User实体添加到会话并调用http://localhost:8080/user以获取会话用户.这里一切都好.但是,如果我像这样调用URL,http://localhost:8080/user?username=testuser那么会话用户的用户名将更改为testuser.我该怎么办才能从会话中获取当前用户?
代码如下
实体:
@Entity
public class User {
private Long id;
private String username;
// ...Getter and Setter...
}
Run Code Online (Sandbox Code Playgroud)
控制器:
@Controller
@RequestMapping("user")
@SessionAttributes("current_user")
public class UserController {
@RequestMapping(method=RequestMethod.GET)
@ResponseBody
public User testSession(@ModelAttribute("current_user") User user) {
return user;
}
}
Run Code Online (Sandbox Code Playgroud)
回应 http://localhost:8080/user
[{"id":1,"username":"aaa111"}]
Run Code Online (Sandbox Code Playgroud)
回应http://localhost:8080/user?username=testuser; 它应该与上面相同,但是
[{"id":1,"username":"testuser"}]
Run Code Online (Sandbox Code Playgroud)