跳至主要內容

日期时间

Mr.Hope大约 2 分钟

日期时间

字段类型

业务类型Java类型数据库类型规则说明
DATETIMEjava.util.Date

java.sql.Timestamp
datetime(fraction)

timestamp(fraction)
日期时间类型
格式为 YYYY-MM-DD HH:MM:SS [fraction],默认精确到秒。在默认的秒精确度上,可以带小数,最多带6位小数,即可以精确到 microseconds (6 digits) precision。可以通过设置 fraction 来设置精确小数位数,最终存储在字段的 decimal 属性上。
【前端交互规则】:前端默认使用日期时间控件,根据日期时间类型格式化格式 format 格式化日期时间。
YEARjava.util.Dateyear年份类型,日期类型。
【数据库规则】:默认“YYYY”格式表示的日期值。
【前端交互规则】:前端默认使用年份控件,根据日期类型格式化格式 format 格式化日期。
DATEjava.util.Date

java.sql.Date
date日期类型。
【数据库规则】:默认“YYYY-MM-DD”格式表示的日期值。
【前端交互规则】:前端默认使用日期控件,根据日期类型格式化格式 format 格式化日期。
TIMEjava.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: 时间精度 默认值为0
  • min: 默认值为空,用于前端校验传入参数的起始时间(BUG)
  • max: 默认值为空,用于前端校验传入参数的结束时间(BUG)

使用示例

基本用法

在Java 中使用注解 @Field.Date并添加fraction 时间精度为3

@Field.Date(fraction = 3)
@Field(displayName = "测试日期时间")
private Date testDateTime;

在数据库中,上述代码将自动创建相应类型的字段,并指定特定的长度。 img.png

更多用法

//指定类型为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;

在数据库中,上述代码将自动创建对应类型的字段。 img.png