You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hotels/back/src/main/java/com/entity/NewsEntity.java

149 lines
5.5 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

// 声明该类所属的包名为 com.entity一般用于存放与数据库操作相关的实体类
package com.entity;
// 导入 MyBatis-Plus 框架的 TableId 注解,用于标识数据库表的主键字段
import com.baomidou.mybatisplus.annotations.TableId;
// 导入 MyBatis-Plus 框架的 TableName 注解,用于指定实体类对应的数据库表名
import com.baomidou.mybatisplus.annotations.TableName;
// 导入 JSR-303 验证框架中的 NotBlank 注解,用于确保字符串字段不为空且去除首尾空格后长度大于 0
import javax.validation.constraints.NotBlank;
// 导入 JSR-303 验证框架中的 NotEmpty 注解,用于确保集合、数组或字符串等不为空
import javax.validation.constraints.NotEmpty;
// 导入 JSR-303 验证框架中的 NotNull 注解,用于确保对象字段不为空
import javax.validation.constraints.NotNull;
// 导入 Jackson 库的 JsonIgnoreProperties 注解,用于在序列化和反序列化时忽略指定属性
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
// 导入反射操作中可能抛出的 InvocationTargetException 异常类
import java.lang.reflect.InvocationTargetException;
// 导入 Serializable 接口,实现该接口的类的对象可进行序列化和反序列化操作
import java.io.Serializable;
// 导入 Date 类,用于处理日期和时间相关的数据
import java.util.Date;
// 导入 List 接口,用于表示一组对象的集合(虽然当前代码未使用该接口相关功能,但导入了对应的包)
import java.util.List;
// 导入 Spring 框架的 DateTimeFormat 注解,用于指定日期在接收参数时的格式
import org.springframework.format.annotation.DateTimeFormat;
// 导入 Jackson 库的 JsonFormat 注解,用于指定日期在序列化时的格式
import com.fasterxml.jackson.annotation.JsonFormat;
// 导入 Apache Commons BeanUtils 工具类,用于复制 JavaBean 的属性
import org.apache.commons.beanutils.BeanUtils;
// 导入 MyBatis-Plus 框架的 TableField 注解,用于设置字段在数据库表中的相关属性(当前代码未使用该注解,但导入了对应的包)
import com.baomidou.mybatisplus.annotations.TableField;
// 导入 MyBatis-Plus 框架的 FieldFill 枚举,用于指定字段的填充策略(当前代码未使用该枚举,但导入了对应的包)
import com.baomidou.mybatisplus.enums.FieldFill;
// 导入 MyBatis-Plus 框架的 IdType 枚举,用于指定主键的生成策略
import com.baomidou.mybatisplus.enums.IdType;
/**
* 酒店公告
* 数据库通用操作实体类(普通增删改查)
* @author 作者信息未填写
* @email 邮箱信息未填写
* @date 2022-04-04 00:20:04
*/
// 使用 TableName 注解指定该实体类对应的数据库表名为 "news"
@TableName("news")
// 定义 NewsEntity 类,使用泛型 T实现 Serializable 接口
public class NewsEntity<T> implements Serializable {
// 定义序列化版本号,用于在序列化和反序列化过程中保持类的版本一致性
private static final long serialVersionUID = 1L;
// 无参构造函数,用于创建 NewsEntity 对象时不传入任何参数
public NewsEntity() {
}
// 带参数的构造函数,通过传入的泛型对象 t 复制属性到当前对象
public NewsEntity(T t) {
try {
// 使用 BeanUtils 的 copyProperties 方法将 t 对象的属性复制到当前对象
BeanUtils.copyProperties(this, t);
} catch (IllegalAccessException | InvocationTargetException e) {
// 如果在复制属性过程中出现非法访问异常或反射调用目标异常
// 简单打印异常堆栈信息,后续可根据实际情况完善异常处理逻辑
e.printStackTrace();
}
}
// 使用 TableId 注解标识该字段为主键
// 主键 id用于唯一标识数据库表中的每条记录
@TableId
private Long id;
// 标题字段,用于存储酒店公告的标题信息
private String title;
// 简介字段,用于存储酒店公告的简要介绍内容
private String introduction;
// 图片字段,用于存储酒店公告相关图片的信息(如图片路径等)
private String picture;
// 内容字段,用于存储酒店公告的具体内容
private String content;
// 使用 JsonFormat 注解指定日期在序列化时的格式为 "yyyy-MM-dd HH:mm:ss",时区为 GMT+8
// 使用 DateTimeFormat 注解,用于处理日期格式相关的转换
@JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat
private Date addtime;
// 获取记录添加时间的方法
public Date getAddtime() {
return addtime;
}
// 设置记录添加时间的方法
public void setAddtime(Date addtime) {
this.addtime = addtime;
}
// 获取主键 id 的方法
public Long getId() {
return id;
}
// 设置主键 id 的方法
public void setId(Long id) {
this.id = id;
}
// 设置标题的方法
public void setTitle(String title) {
this.title = title;
}
// 获取标题的方法
public String getTitle() {
return title;
}
// 设置简介的方法
public void setIntroduction(String introduction) {
this.introduction = introduction;
}
// 获取简介的方法
public String getIntroduction() {
return introduction;
}
// 设置图片的方法
public void setPicture(String picture) {
this.picture = picture;
}
// 获取图片的方法
public String getPicture() {
return picture;
}
// 设置内容的方法
public void setContent(String content) {
this.content = content;
}
// 获取内容的方法
public String getContent() {
return content;
}
}