Update JianshenkechengEntity.java

王刚注释
pz2femycj 4 months ago
parent b27b57d78c
commit ece09f22e2

@ -1,340 +1,266 @@
// 包声明实体类包存放所有与数据库表映射的JavaBean对象
package com.entity; package com.entity;
// 字段描述注解:自定义数据库字段元数据
import com.annotation.ColumnInfo; import com.annotation.ColumnInfo;
// 数据校验注解:提供非空、范围等验证规则
import javax.validation.constraints.*; import javax.validation.constraints.*;
// JSON序列化配置忽略未定义属性
import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
// 反射异常类:处理属性拷贝时的异常
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
// 序列化接口标识
import java.io.Serializable; import java.io.Serializable;
// 集合工具类
import java.util.*; import java.util.*;
// Apache Ant日期工具代码中未使用建议移除
import org.apache.tools.ant.util.DateUtils; import org.apache.tools.ant.util.DateUtils;
// Spring日期参数绑定注解
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
// Jackson日期格式化注解
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
// Bean属性拷贝工具
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
// MyBatis Plus字段注解
import com.baomidou.mybatisplus.annotations.TableField; import com.baomidou.mybatisplus.annotations.TableField;
// MyBatis Plus主键注解
import com.baomidou.mybatisplus.annotations.TableId; import com.baomidou.mybatisplus.annotations.TableId;
// MyBatis Plus表名注解
import com.baomidou.mybatisplus.annotations.TableName; import com.baomidou.mybatisplus.annotations.TableName;
// MyBatis Plus主键策略枚举
import com.baomidou.mybatisplus.enums.IdType; import com.baomidou.mybatisplus.enums.IdType;
// MyBatis Plus字段填充策略
import com.baomidou.mybatisplus.enums.FieldFill; import com.baomidou.mybatisplus.enums.FieldFill;
// 自定义日期格式化工具
import com.utils.DateUtil; import com.utils.DateUtil;
/** // 健身课程实体
* //映射数据库表 jianshenkecheng
* //存储健身课程基本信息、统计数据和关联信息
* @author
* @email @TableName("jianshenkecheng") // 指定关联数据库表名
*/
@TableName("jianshenkecheng")
public class JianshenkechengEntity<T> implements Serializable { public class JianshenkechengEntity<T> implements Serializable {
// 序列化版本标识(类版本控制)
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
// 空构造器(持久层框架需要)
public JianshenkechengEntity() { public JianshenkechengEntity() {
} }
// 泛型构造器:通过反射进行属性拷贝
public JianshenkechengEntity(T t) { public JianshenkechengEntity(T t) {
try { try {
BeanUtils.copyProperties(this, t); BeanUtils.copyProperties(this, t); // 使用Apache工具类拷贝属性
} catch (IllegalAccessException | InvocationTargetException e) { } catch (IllegalAccessException | InvocationTargetException e) {
// TODO Auto-generated catch block e.printStackTrace(); // 生产环境建议改为日志记录
e.printStackTrace();
} }
} }
// 主键字段(自增策略)
/** @TableId(type = IdType.AUTO) // 主键生成策略:数据库自增
* @ColumnInfo(comment="主键",type="int(11)") // 字段注释主键数据库类型int(11)
*/ @TableField("id") // 映射数据库字段名(可省略)
@TableId(type = IdType.AUTO)
@ColumnInfo(comment="主键",type="int(11)")
@TableField(value = "id")
private Integer id; private Integer id;
// 关联教练ID外键
/** @ColumnInfo(comment="教练",type="int(11)") // 关联jiaolian表主键
* @TableField("jiaolian_id")
*/
@ColumnInfo(comment="教练",type="int(11)")
@TableField(value = "jiaolian_id")
private Integer jiaolianId; private Integer jiaolianId;
// 课程名称(需考虑唯一性约束)
/** @ColumnInfo(comment="健身课程名称",type="varchar(200)") // 数据库类型varchar(200)
* @TableField("jianshenkecheng_name")
*/
@ColumnInfo(comment="健身课程名称",type="varchar(200)")
@TableField(value = "jianshenkecheng_name")
private String jianshenkechengName; private String jianshenkechengName;
// 课程封面图URL建议添加OSS存储注释
/** @ColumnInfo(comment="健身课程照片",type="varchar(200)") // 存储图片路径
* @TableField("jianshenkecheng_photo")
*/
@ColumnInfo(comment="健身课程照片",type="varchar(200)")
@TableField(value = "jianshenkecheng_photo")
private String jianshenkechengPhoto; private String jianshenkechengPhoto;
// 课程视频地址(建议标注支持的格式)
/** @ColumnInfo(comment="课程视频",type="varchar(200)") // 存储视频文件路径或URL
* @TableField("jianshenkecheng_video")
*/
@ColumnInfo(comment="课程视频",type="varchar(200)")
@TableField(value = "jianshenkecheng_video")
private String jianshenkechengVideo; private String jianshenkechengVideo;
// 点赞计数器(建议添加并发控制)
/** @ColumnInfo(comment="赞",type="int(11)") // 默认值建议设置为0
* @TableField("zan_number")
*/
@ColumnInfo(comment="赞",type="int(11)")
@TableField(value = "zan_number")
private Integer zanNumber; private Integer zanNumber;
// 点踩计数器(考虑是否需要负值限制)
/**
*
*/
@ColumnInfo(comment="踩",type="int(11)") @ColumnInfo(comment="踩",type="int(11)")
@TableField(value = "cai_number") @TableField("cai_number")
private Integer caiNumber; private Integer caiNumber;
// 课程分类(应关联字典表或使用枚举类)
/** @ColumnInfo(comment="健身课程类型",type="int(11)") // 例1-有氧 2-力量 3-柔韧
* @TableField("jianshenkecheng_types")
*/
@ColumnInfo(comment="健身课程类型",type="int(11)")
@TableField(value = "jianshenkecheng_types")
private Integer jianshenkechengTypes; private Integer jianshenkechengTypes;
// 点击量统计(可考虑每日统计优化)
/** @ColumnInfo(comment="健身课程热度",type="int(11)") // 记录课程查看次数
* @TableField("jianshenkecheng_clicknum")
*/
@ColumnInfo(comment="健身课程热度",type="int(11)")
@TableField(value = "jianshenkecheng_clicknum")
private Integer jianshenkechengClicknum; private Integer jianshenkechengClicknum;
// 富文本课程介绍需考虑XSS防护
/** @ColumnInfo(comment="健身课程介绍",type="longtext") // 存储HTML格式内容
* @TableField("jianshenkecheng_content")
*/
@ColumnInfo(comment="健身课程介绍",type="longtext")
@TableField(value = "jianshenkecheng_content")
private String jianshenkechengContent; private String jianshenkechengContent;
// 逻辑删除标志0-未删除 1-已删除)
/** @ColumnInfo(comment="逻辑删除",type="int(11)") // 替代物理删除
* @TableField("data_delete")
*/
@ColumnInfo(comment="逻辑删除",type="int(11)")
@TableField(value = "data_delete")
private Integer dataDelete; private Integer dataDelete;
// 数据录入时间(管理后台操作时间)
/** @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss") // 响应格式
* @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") // 请求参数格式
*/ @ColumnInfo(comment="录入时间",type="timestamp") // 数据库类型timestamp
@JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss") @TableField(value = "insert_time", fill = FieldFill.INSERT) // 新增时自动填充
@DateTimeFormat
@ColumnInfo(comment="录入时间",type="timestamp")
@TableField(value = "insert_time",fill = FieldFill.INSERT)
private Date insertTime; private Date insertTime;
// 课程创建时间业务时间可能与insert_time重复
/**
* homeMain
*/
@JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss") @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
@DateTimeFormat @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ColumnInfo(comment="创建时间",type="timestamp") @ColumnInfo(comment="创建时间",type="timestamp") // 建议确认与insert_time的区别
@TableField(value = "create_time",fill = FieldFill.INSERT) @TableField(value = "create_time", fill = FieldFill.INSERT)
private Date createTime; private Date createTime;
// ----------------------------- Getter/Setter方法 -----------------------------
/** // 主键访问器
*
*/
public Integer getId() { public Integer getId() {
return id; return id;
} }
/**
*
*/
// 主键修改器
public void setId(Integer id) { public void setId(Integer id) {
this.id = id; this.id = id;
} }
/**
* // 教练ID访问器
*/
public Integer getJiaolianId() { public Integer getJiaolianId() {
return jiaolianId; return jiaolianId;
} }
/**
*
*/
// 教练ID修改器应校验教练存在性
public void setJiaolianId(Integer jiaolianId) { public void setJiaolianId(Integer jiaolianId) {
this.jiaolianId = jiaolianId; this.jiaolianId = jiaolianId;
} }
/**
* // 课程名称访问器
*/
public String getJianshenkechengName() { public String getJianshenkechengName() {
return jianshenkechengName; return jianshenkechengName;
} }
/**
*
*/
// 课程名称修改器(建议添加唯一性校验)
public void setJianshenkechengName(String jianshenkechengName) { public void setJianshenkechengName(String jianshenkechengName) {
this.jianshenkechengName = jianshenkechengName; this.jianshenkechengName = jianshenkechengName;
} }
/**
* // 课程图片访问器
*/
public String getJianshenkechengPhoto() { public String getJianshenkechengPhoto() {
return jianshenkechengPhoto; return jianshenkechengPhoto;
} }
/**
*
*/
// 课程图片修改器(建议添加格式校验)
public void setJianshenkechengPhoto(String jianshenkechengPhoto) { public void setJianshenkechengPhoto(String jianshenkechengPhoto) {
this.jianshenkechengPhoto = jianshenkechengPhoto; this.jianshenkechengPhoto = jianshenkechengPhoto;
} }
/**
* // 课程视频访问器
*/
public String getJianshenkechengVideo() { public String getJianshenkechengVideo() {
return jianshenkechengVideo; return jianshenkechengVideo;
} }
/**
*
*/
// 课程视频修改器(建议添加视频格式校验)
public void setJianshenkechengVideo(String jianshenkechengVideo) { public void setJianshenkechengVideo(String jianshenkechengVideo) {
this.jianshenkechengVideo = jianshenkechengVideo; this.jianshenkechengVideo = jianshenkechengVideo;
} }
/**
* // 点赞数访问器
*/
public Integer getZanNumber() { public Integer getZanNumber() {
return zanNumber; return zanNumber;
} }
/**
*
*/
// 点赞数修改器(建议添加非负校验)
public void setZanNumber(Integer zanNumber) { public void setZanNumber(Integer zanNumber) {
this.zanNumber = zanNumber; this.zanNumber = zanNumber;
} }
/**
* // 点踩数访问器
*/
public Integer getCaiNumber() { public Integer getCaiNumber() {
return caiNumber; return caiNumber;
} }
/**
*
*/
// 点踩数修改器(建议添加非负校验)
public void setCaiNumber(Integer caiNumber) { public void setCaiNumber(Integer caiNumber) {
this.caiNumber = caiNumber; this.caiNumber = caiNumber;
} }
/**
* // 课程类型访问器
*/
public Integer getJianshenkechengTypes() { public Integer getJianshenkechengTypes() {
return jianshenkechengTypes; return jianshenkechengTypes;
} }
/**
*
*/
// 课程类型修改器(应限制有效值范围)
public void setJianshenkechengTypes(Integer jianshenkechengTypes) { public void setJianshenkechengTypes(Integer jianshenkechengTypes) {
this.jianshenkechengTypes = jianshenkechengTypes; this.jianshenkechengTypes = jianshenkechengTypes;
} }
/**
* // 点击量访问器
*/
public Integer getJianshenkechengClicknum() { public Integer getJianshenkechengClicknum() {
return jianshenkechengClicknum; return jianshenkechengClicknum;
} }
/**
*
*/
// 点击量修改器(建议只允许递增)
public void setJianshenkechengClicknum(Integer jianshenkechengClicknum) { public void setJianshenkechengClicknum(Integer jianshenkechengClicknum) {
this.jianshenkechengClicknum = jianshenkechengClicknum; this.jianshenkechengClicknum = jianshenkechengClicknum;
} }
/**
* // 课程详情访问器
*/
public String getJianshenkechengContent() { public String getJianshenkechengContent() {
return jianshenkechengContent; return jianshenkechengContent;
} }
/**
*
*/
// 课程详情修改器建议添加HTML过滤
public void setJianshenkechengContent(String jianshenkechengContent) { public void setJianshenkechengContent(String jianshenkechengContent) {
this.jianshenkechengContent = jianshenkechengContent; this.jianshenkechengContent = jianshenkechengContent;
} }
/**
* // 逻辑删除标志访问器
*/
public Integer getDataDelete() { public Integer getDataDelete() {
return dataDelete; return dataDelete;
} }
/**
*
*/
// 逻辑删除标志修改器应限制0/1取值
public void setDataDelete(Integer dataDelete) { public void setDataDelete(Integer dataDelete) {
this.dataDelete = dataDelete; this.dataDelete = dataDelete;
} }
/**
* // 录入时间访问器(通常自动生成)
*/
public Date getInsertTime() { public Date getInsertTime() {
return insertTime; return insertTime;
} }
/**
*
*/
// 录入时间修改器(通常无需手动设置)
public void setInsertTime(Date insertTime) { public void setInsertTime(Date insertTime) {
this.insertTime = insertTime; this.insertTime = insertTime;
} }
/**
* homeMain // 创建时间访问器注意与insert_time区别
*/
public Date getCreateTime() { public Date getCreateTime() {
return createTime; return createTime;
} }
/**
* homeMain
*/
// 创建时间修改器(需确认业务场景)
public void setCreateTime(Date createTime) { public void setCreateTime(Date createTime) {
this.createTime = createTime; this.createTime = createTime;
} }
// 对象字符串表示(调试用)
@Override @Override
public String toString() { public String toString() {
return "Jianshenkecheng{" + return "Jianshenkecheng{" +
@ -349,7 +275,7 @@ public class JianshenkechengEntity<T> implements Serializable {
", jianshenkechengClicknum=" + jianshenkechengClicknum + ", jianshenkechengClicknum=" + jianshenkechengClicknum +
", jianshenkechengContent=" + jianshenkechengContent + ", jianshenkechengContent=" + jianshenkechengContent +
", dataDelete=" + dataDelete + ", dataDelete=" + dataDelete +
", insertTime=" + DateUtil.convertString(insertTime,"yyyy-MM-dd") + ", insertTime=" + DateUtil.convertString(insertTime,"yyyy-MM-dd") + // 格式化丢失时间精度
", createTime=" + DateUtil.convertString(createTime,"yyyy-MM-dd") + ", createTime=" + DateUtil.convertString(createTime,"yyyy-MM-dd") +
"}"; "}";
} }

Loading…
Cancel
Save