在sessionobject的主页上看不到我的用户名

vpfxa7rd  于 2021-06-27  发布在  Java
关注(0)|答案(0)|浏览(192)

我有问题与sessionobject,我不知道为什么我有这个错误我的错误是这个

但我想看看登录者谁是我的sessionobject的标记:

public class SessionObject {
    private User user = null;

    public User getUser(){
        return user;
    }
    public void setUser(User user){
        this.user = user;
    }
}

我查看hello用户名的方法:

@RequestMapping(value = "/rentAppPage", method = RequestMethod.GET)
    public String page(Model model) {
        if(this.sessionObject.getUser() == null) {
            return "redirect:/login";
        }

        model.addAttribute("username", this.sessionObject.getUser().getUsername());
        return "rentAppPage";
    }

以及我的登录表

<form action="/authenticate" method="post" id="login" class="input-group">
                <div th:text="${errorMessage}" id="error-message"></div>
                <input type="text" class="input-field" placeholder="Enter username" name="username" th:field="*{userModel.username}"  required>
                <input type="password" class="input-field" placeholder="Enter password"  name="password" th:field="*{userModel.password}"required>
                <input type="checkbox" class="chech-box"><span class="span1">Remember password</span>
                <button type="submit" class="submit-btn">Log in</button>
            </form>

我在主页上有div

<div th:text="'Hello: ' + ${username}"></div>
@Entity
@Table(name = "user")
public class User   {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int idUser;

    private String username;
    private String password;
    private String name;
    private String surname;
    private String email;
    private double latitude;
    private double longitude;
    private String role;
    private String locationName;
@Controller
public class LoginController {
    @Resource(name = "sessionObject")
    SessionObject sessionObject;

    @Autowired
    IAuthenticationService authenticationService;

    public LoginController(){

    }

    @RequestMapping(value = "",method = RequestMethod.GET)
    public String mainSite(){
        return "redirect:login";
    }

  @RequestMapping(value = "/login",method = RequestMethod.GET)
    public String showLoginForm(Model model){
        model.addAttribute("userModel",new User());
        model.addAttribute("errorMessage","");
        return "login";
    }

    @RequestMapping(value = "/authenticate",method = RequestMethod.POST)
    public  String authenticateUser(@ModelAttribute("userModel")User user,Model model){
        boolean authResult = this.authenticationService.authenticationUser(user);
        if(authResult){
 this.sessionObject.setUser(user);
            return "rentAppPage";
        }else{
            model.addAttribute("errorMessage","error data!!!");
            model.addAttribute("userModel",new User());
            return "login";
        }
    }

    @RequestMapping(value = "/rentAppPage", method = RequestMethod.GET)
    public String page(Model model) {
        if(this.sessionObject.getUser() == null) {
            return "redirect:/login";
        }

        model.addAttribute("username", this.sessionObject.getUser().getUsername());
        return "rentAppPage";
    }
 @RequestMapping(value = "/logout",method = RequestMethod.GET)
    public String logout(){
        this.sessionObject.setUser(null);
        return "redirect:login";
    }

有人能解释为什么我有空的吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题