|
|
|
@ -14,30 +14,39 @@ import java.util.Date;
|
|
|
|
|
* @CONTACT 317758022@qq.com
|
|
|
|
|
* @DESC 用户实体类
|
|
|
|
|
*/
|
|
|
|
|
// 使用lombok的@Data注解,它会自动为类生成一系列常用的方法,包括但不限于所有属性的Getter和Setter方法、toString方法、equals方法和hashCode方法等,
|
|
|
|
|
// 减少了手动编写这些重复代码的工作量,让代码更加简洁,方便在其他地方对类的属性进行访问和操作以及进行对象的比较等操作。
|
|
|
|
|
@Data
|
|
|
|
|
// 使用lombok的@NoArgsConstructor注解,它会为类自动生成一个无参构造函数,在一些需要通过默认构造方式创建对象的场景下(比如某些框架进行对象实例化时)会很有用,
|
|
|
|
|
// 确保类具有默认的构造方式来创建实例。
|
|
|
|
|
@NoArgsConstructor
|
|
|
|
|
// 使用lombok的@AllArgsConstructor注解,会为类自动生成一个包含所有属性的有参构造函数,方便在创建对象时可以一次性传入所有属性的值进行初始化,
|
|
|
|
|
// 适用于需要明确指定各个属性值来创建对象的情况,提高了对象创建的灵活性和便捷性。
|
|
|
|
|
@AllArgsConstructor
|
|
|
|
|
// 使用lombok的@ToString注解,它会自动重写类的toString方法,生成一个方便查看对象属性值的字符串表示形式,在调试或者日志输出等场景中,
|
|
|
|
|
// 能够直观地看到对象各个属性的具体内容,有助于快速了解对象的状态。
|
|
|
|
|
@ToString
|
|
|
|
|
// 实现Serializable接口,表示这个类的对象可以被序列化,即在网络传输或者保存到文件等场景下,可以将对象转换为字节流的形式,之后也可以再从字节流反序列化为对象,
|
|
|
|
|
// 方便对象的持久化存储和在不同环境间的传递等操作,通常需要定义一个序列化版本号(serialVersionUID)来确保序列化和反序列化的兼容性,这里没有显式定义,会由Java自动生成一个默认的版本号。
|
|
|
|
|
public class User implements Serializable {
|
|
|
|
|
// 用户的唯一标识,通常对应数据库表中的主键,用于区分不同的用户,类型为Integer,表示是一个整数类型的编号。
|
|
|
|
|
private Integer id;
|
|
|
|
|
|
|
|
|
|
// 用户名,用于用户登录或者在系统中进行标识等,类型为String,存储用户自定义的用户名信息。
|
|
|
|
|
private String username;
|
|
|
|
|
|
|
|
|
|
// 用户密码,用于验证用户身份,类型为String,存储用户设置的密码信息,在实际应用中通常需要进行加密存储以保证安全性。
|
|
|
|
|
private String password;
|
|
|
|
|
|
|
|
|
|
// 用户的电子邮箱地址,类型为String,可用于用户注册验证、找回密码等功能中接收相关通知邮件等操作。
|
|
|
|
|
private String email;
|
|
|
|
|
|
|
|
|
|
// 用户的电话号码,类型为String,可用于联系用户或者作为账号安全验证等的一种方式,比如短信验证码验证等场景。
|
|
|
|
|
private String phone;
|
|
|
|
|
|
|
|
|
|
// 用于找回密码等功能时设置的安全问题,类型为String,用户自行设置一个问题,以便在忘记密码时通过回答该问题来重置密码。
|
|
|
|
|
private String question;
|
|
|
|
|
|
|
|
|
|
// 对应上面安全问题的答案,类型为String,只有用户知道该答案,用于在找回密码等流程中验证用户身份,确保是合法的用户进行密码重置操作。
|
|
|
|
|
private String answer;
|
|
|
|
|
|
|
|
|
|
//角色0-管理员,1-普通用户
|
|
|
|
|
// 用户角色,用整数表示,0代表管理员角色,1代表普通用户角色,通过这个属性可以区分不同权限的用户,在系统中进行不同级别的操作和访问控制。
|
|
|
|
|
private Integer role;
|
|
|
|
|
|
|
|
|
|
// 用户账号创建的时间,类型为Date,记录用户首次在系统中注册账号的具体时间点,方便进行一些基于时间的统计分析或者数据管理等操作。
|
|
|
|
|
private Date createTime;
|
|
|
|
|
|
|
|
|
|
// 用户账号信息最后更新的时间,类型为Date,每当用户修改了如密码、邮箱、电话等重要信息后,会更新这个时间戳,用于跟踪用户信息的变更情况。
|
|
|
|
|
private Date updateTime;
|
|
|
|
|
|
|
|
|
|
}
|