JavaBean 是一种符合特定命名约定的 Java 类,它通常用于封装数据。
JavaBean 的主要特点是:
 1. 无参构造器:JavaBean 必须有一个公共的(public)无参构造方法,以便于反射时能够创建对象实例。
 2. 属性:JavaBean 的属性通常是通过私有(private)字段和公共(public)的 getter 和 setter 方法来定义的。属性可以是简单的(如 int、float、String)或复杂的(如其他 JavaBean 对象)。
 JavaBean 的命名约定通常包括:
 - 属性字段以小写字母开头,遵循驼峰命名法。
 - getter 方法以 `get` 开头,后跟属性名,属性名的首字母大写。
 - setter 方法以 `set` 开头,后跟属性名,属性名的首字母大写。
 - 如果属性是布尔类型,getter 方法可能会以 `is` 开头。
 例如,一个简单的 JavaBean 类可能如下所示:
public class Person  {
    private String name;
    private int age;
    public Person() {
        // 无参构造器
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
}
在Web开发中,Cookie 和 Session是两种常用的技术,用于跟踪用户的状态和信息。
 Cookie是存储在用户计算机上的一小段文本信息,通常用于记录用户的一些信息,以便在用户下次访问同一网站时,网站能够识别用户并记住用户的偏好设置或其他信息。
 - **生命周期**:Cookie可以设置为临时的(会话Cookie),当用户关闭浏览器时就会消失;也可以设置为长期的(持久Cookie),直到设定的过期时间才会被删除。
 - **存储限制**:每个域的Cookie数量和大小都有限制,不同浏览器有不同的限制。
 - **安全性**:Cookie可以设置为安全的,只通过HTTPS传输,以防止中间人攻击。





Cookie不能直接存储中文
 解决方案:
 对中文进行URL编码,采用URLEncoder.encode(),将编码后的值存入Cookie中
  Session
 Session 是存储在服务器上的一个对象,用于存储特定用户会话所需的属性及配置信息。当用户在应用程序的Web页面之间跳转时,存储在Session对象中的变量不会清除,而是在整个用户会话中一直存在下去。
 - **生命周期**:Session的生命周期通常是从用户第一次访问网站开始,直到用户长时间未进行操作或明确退出时结束。
 - **存储限制**:Session的存储依赖于服务器,因此理论上存储容量比Cookie大得多,但实际上服务器也会对Session存储大小进行限制。
 - **安全性**:Session存储在服务器上,相对更安全,不容易被客户端篡改。



 Cookie 与 Session 的关系
 - **关联性**:Session通常依赖于Cookie来工作。服务器在创建Session时,会生成一个唯一的Session ID,并将其存储在用户的Cookie中。每次用户请求时,浏览器会将这个Session ID发送给服务器,服务器根据这个ID来识别用户。
 - **无Cookie的Session**:如果用户禁用了Cookie,服务器可以通过其他方式(如URL重写)来传递Session ID。
 ### 使用场景
 - **Cookie**:适合存储一些不敏感的信息,如用户的偏好设置、记住用户名等。
 - **Session**:适合存储敏感和重要的信息,如用户的登录状态、购物车内容等。
 在Web开发中,根据需要选择使用Cookie、Session或两者结合,可以有效地管理用户状态和提高用户体验。
  






![[Flutter GetX使用] Getx路由和状态管理-GetController使用过程中的踩坑记录](https://img-blog.csdnimg.cn/direct/a4560dd6203d41c49db5249dc40edea5.png)












