Java Struts2记得我吗

Java Struts2记得我吗,java,jakarta-ee,struts2,struts,Java,Jakarta Ee,Struts2,Struts,我在我的web应用程序中使用Struts 2。我的客户要求我实现“记住我”功能,这样他就不必再次登录。我认为应该这样做: 如果选中“记住我”选项,我应该创建一个带有用户特定密钥的cookie,并在用户登录时将其存储在数据库中 我应该编写一个拦截器,从请求中取出cookie,对照数据库检查密钥,如果找到并且没有过期(7天),它将相应的用户放入会话 有没有其他更有效、更简单、更好的性能优化方法 您的方法是正确的,这将帮助您以更有效的方式实现它:)为什么要在数据库中存储cookie?将cookie的最

我在我的web应用程序中使用Struts 2。我的客户要求我实现“记住我”功能,这样他就不必再次登录。我认为应该这样做:

  • 如果选中“记住我”选项,我应该创建一个带有用户特定密钥的cookie,并在用户登录时将其存储在数据库中
  • 我应该编写一个拦截器,从请求中取出cookie,对照数据库检查密钥,如果找到并且没有过期(7天),它将相应的用户放入会话

  • 有没有其他更有效、更简单、更好的性能优化方法

    您的方法是正确的,这将帮助您以更有效的方式实现它:)

    为什么要在数据库中存储cookie?将cookie的最大期限设置为7天。检查cookie的过期日期。。如果有效,请在用户中记录。这很简单,但描述不清楚(可能不完整),OP正在寻找一些其他解决方案。您可以使用具有此功能的spring security。@ShashiBhushan如果您没有将密钥存储在服务器上,您将根据什么验证cookie?@fgb是否要求每个用户都有唯一的密钥。。那你是对的。。否则,就不需要数据库来存储cookies。