日期时间
大约 2 分钟
日期时间
字段类型
业务类型 | Java类型 | 数据库类型 | 规则说明 |
---|---|---|---|
DATETIME | java.util.Date java.sql.Timestamp | datetime(fraction) timestamp(fraction) | 日期时间类型 格式为 YYYY-MM-DD HH:MM:SS [fraction],默认精确到秒。在默认的秒精确度上,可以带小数,最多带6位小数,即可以精确到 microseconds (6 digits) precision。可以通过设置 fraction 来设置精确小数位数,最终存储在字段的 decimal 属性上。 【前端交互规则】:前端默认使用日期时间控件,根据日期时间类型格式化格式 format 格式化日期时间。 |
YEAR | java.util.Date | year | 年份类型,日期类型。 【数据库规则】:默认“YYYY”格式表示的日期值。 【前端交互规则】:前端默认使用年份控件,根据日期类型格式化格式 format 格式化日期。 |
DATE | java.util.Date java.sql.Date | date | 日期类型。 【数据库规则】:默认“YYYY-MM-DD”格式表示的日期值。 【前端交互规则】:前端默认使用日期控件,根据日期类型格式化格式 format 格式化日期。 |
TIME | java.util.Date java.sql.Time | time(fraction) | 时间类型。 【数据库规则】:默认“HH:MM:SS”格式表示的时间值。 【前端交互规则】:前端默认使用时间控件,根据日期类型格式化格式 format 格式化日期。 |
参数属性
@Field.Date(
type = DateTypeEnum.DATETIME,
format = DateFormatEnum.DATETIME,
fraction = 0,
max = "",
min=""
)
type:
时间类型DATETIME
[默认值],日期时间YEAR
年份DATE
日期TIME
时间
format
: 时间格式DATETIME
[默认值] 格式: "yyyy-MM-dd HH:mm:ss"TIMESTAMP
时间戳DATE
格式: "yyyy-MM-dd"TIME
格式: "HH:mm:ss"YEAR
格式: "yyyy"DATETIME_EEE_ZZ
格式: "EEE MMM dd HH:mm:ss zzz yyyy"DATETIME_E_MM_Z
格式: "E MMM dd yyyy HH:mm:ss z"
fraction:
时间精度 默认值为0min:
默认值为空,用于前端校验传入参数的起始时间(BUG)max:
默认值为空,用于前端校验传入参数的结束时间(BUG)
使用示例
基本用法
在Java 中使用注解 @Field.Date并添加fraction 时间精度为3
@Field.Date(fraction = 3)
@Field(displayName = "测试日期时间")
private Date testDateTime;
在数据库中,上述代码将自动创建相应类型的字段,并指定特定的长度。
更多用法
//指定类型为DATETIME,指定格式为DATETIME
@Field.Date(type = DateTypeEnum.DATETIME,format = DateFormatEnum.DATETIME)
@Field(displayName = "测试日期时间")
private Date testDateTime;
//可以不用指定Field.Date。系统会自行推断为DATETIME
@Field(displayName = "测试日期时间")
private Date testDateTime;
//指定类型为YEAR,指定格式为YEAR
@Field.Date(type = DateTypeEnum.YEAR,format = DateFormatEnum.YEAR)
@Field(displayName = "测试年份")
private Date testYear;
//指定类型为DATE,指定格式为DATE
@Field.Date(type = DateTypeEnum.DATE,format = DateFormatEnum.DATE)
@Field(displayName = "测试日期")
private Date testDate;
//指定类型为TIME,指定格式为TIME
@Field.Date(type = DateTypeEnum.TIME,format = DateFormatEnum.TIME)
@Field(displayName = "测试时间")
private Time testTime;
在数据库中,上述代码将自动创建对应类型的字段。