Update JianshenkechengEntity.java

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

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