java - 在 Java 中抽象出一个单独的类来创建 cookie 的值是否有意义?

标签 java

假设我有一个类:

public class Foo
{

   // creates a cookie named Session with settings like httpOnly, path, secure etc
} 

该类还创建cookie值(创建该值涉及一些复杂的设置)

拥有一个仅包含 cookie 值的特定详细信息的特定类是否有意义,例如生成没有任何 cookie 特定详细信息的值(httpOnly、secure)?

基本上就是这样

public class SessionBuilder
{
  // this class holds any value constants or any details on creating the value, without the scope "Cookie" in it
}

在我看来,第二个类没有多大意义,因为它非常具体地实现一个目标,并且它只会在 Foo 类中使用。而且,由于 Foo 类负责创建 cookie,我认为它也应该负责创建 cookie 值。

如果开设另一个类(class)确实有帮助,那么什么名称才有意义? SessionBuilder 听起来有点奇怪。

我发现拥有另一个类可能会有所帮助,因此将来如果我在 Foo 类中创建更多 cookie,我可以在单独的类中抽象出一些 cookie 值详细信息

最佳答案

我认为您可以使用 Foo 类来管理 cookie 和值本身,那么您可能需要一个简单的 Session 类来使用,以便拥有更多对它们进行控制。

最后,真正重要的是你如何感觉更舒服的合作。我想说这更多的是一个设计问题而不是具体问题,如果是我,我会简单地构建 Cookie 类,然后 Session 类来管理它。

无论如何,我强烈建议使用内置框架来管理 session 。
它们对于 Web 应用程序安全非常重要,您可能需要查看 SuperTokens.io

关于java - 在 Java 中抽象出一个单独的类来创建 cookie 的值是否有意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62286142/

相关文章:

java - 斯坦福解析器 - 训练输入规范

java - 如何强制 Apache 的 CloseableHttpClient 使用 TLSv1.2?

java - 滚动时 JTree 严重模糊

java - 计算器程序不断得出答案 "0"?

java - 如何证明 i++ 不是原子的

java - '(number)' 的正则表达式

java - 关于JFrame上鼠标单击时添加矩形

java - Microsoft JDBC Driver 4.1 可以与 Microsoft ODBC Driver 1.0 一起使用吗?

java - 如何将图像从 Imageview 发送到服务器

java - 在 Linux 上运行 Java 时,如何避免因区分大小写而出现 FileNotFound 异常?