Skip to content
本页目录

基础字段类型

关于 支持类型默认推断类型

下文的 支持类型, 是值其可支持的类型范围, 而 默认推断类型 是指为特殊声明类型的情况下, 这些 Java 类型会被推断为当前类型.

日期时间 为例, 其 支持类型java.util.Date, java.time.LocalDateTime, 而 默认推断类型 为: java.time.LocalDateTime.

即如果不通过 @Field(type=?) 的方式声明的情况下, 字段类型为 java.time.LocalDateTime 会自动推断为 DateTime.

但如果字段类型为 java.util.Date, 且为未声明 @Field(type=?) 的情况下, 则会自动推断为 Date, 因为 日期 类型的默认推断类型中包含了 java.util.Date.

布尔(Boolean)

  • 支持类型: boolean, java.lang.Boolean
  • 默认推断类型: boolean, java.lang.Boolean

展示内容配置

默认展示位开关类型组件, 可通过 @BooleanDisplay 注解声明 True 和 False 的显示内容, 例如:

java
@BooleanDisplay(trueLabel = "启用", falseLabel = "禁用")
private Boolean enabled;

文本(TEXT)

  • 字段类型: TEXT
  • 支持类型: java.lang.String, java.lang.CharSequence
  • 默认推断类型: java.lang.String, java.lang.CharSequence

常见的文本类型, 用于输入各类文本类型字段.

多行文本(TEXTAREA)

  • 字段类型: TEXTAREA
  • 支持类型: java.lang.String, java.lang.CharSequence
  • 默认推断类型: 无, 需要声明 @Field(type=ValueType.TEXTAREA)

多行文本类型, 可用于简单的详情描述等字段.

暂不支持富文本编辑器, 后续考虑增加, 但是也会是独立的字段类型.

数字(DIGIT)

  • 字段类型: DIGIT
  • 支持类型: byte, short, int, long, float, double, ? extends java.lang.Number
  • 默认推断类型: byte, short, int, long, float, double, ? extends java.lang.Number

常见的数字类型, 包含了整数和浮点数.

金额(MONEY)

  • 字段类型: MONEY
  • 支持类型: byte, short, int, long, float, double, ? extends java.lang.Number
  • 默认推断类型: 无, 需要声明 @Field(type=ValueType.MONEY)

金额类型字段, 整体行为跟数字类型基本一致, 主要差异是会显式金额符号

日期(DATE)

  • 字段类型: DATE
  • 支持类型: java.util.Date, java.time.LocalDate
  • 默认推断类型: java.util.Date, java.time.LocalDate

日期类型, 仅记录年月日的日期, 如果用 java.util.Date 类型接收, 则默认是当天的 0 点.

日期时间(DATE_TIME)

  • 字段类型: DATE_TIME
  • 支持类型: java.util.Date, java.time.LocalDateTime
  • 默认推断类型: java.time.LocalDateTime

日期时间类型, 包含了日期与时间.

时间(TIME)

  • 字段类型: TIME
  • 支持类型: java.time.LocalTime, java.lang.String, java.lang.CharSequence
  • 默认推断类型: java.time.LocalTime

时间类型, 不包含日期仅有时间, 例如 16:30:00, 如果是 String 类型接收, 则默认格式是 HH:mm:ss.

日期-周(DATE_WEEK)

  • 字段类型: DATE_WEEK
  • 支持类型: java.lang.String
  • 默认推断类型: 无, 需要声明 @Field(type=ValueType.DATE_WEEK)

日期类型的周选择器, 即以周为单位的选择, 通过字符串传递, 默认格式为 YYYY-WW, 采用 IsoWeekNum, 遵循 ISO8601 标准.

比如 2023 年第 5 周, 则 value 为"2023-05".

日期-月(DATE_MONTH)

  • 字段类型: DATE_MONTH
  • 支持 Java 类型: java.lang.String
  • 默认推断类型: 无, 需要声明 @Field(type=ValueType.DATE_MONTH)

日期类型的月选择器, 即以月为单位的选择, 通过字符串传递, 默认格式为 YYYY-MM.

比如 2023 年 3 月, 则 value 为"2023-03".

日期-季度(DATE_QUARTER)

  • 字段类型: DATE_QUARTER
  • 支持 Java 类型: java.lang.String
  • 默认推断类型: 无, 需要声明 @Field(type=ValueType.DATE_QUARTER)

日期类型的季度选择器, 即以季度为单位的选择, 通过字符串传递, 默认格式为 YYYY-Q.

比如 2023 年第二季度, 则 value 为"2023-Q2".

日期-年度(DATE_YEAR)

  • 字段类型: DATE_YEAR
  • 支持 Java 类型: java.lang.String
  • 默认推断类型: 无, 需要声明 @Field(type=ValueType.DATE_YEAR)

日期类型的年选择器, 即以年为单位的选择, 通过字符串传递, 默认格式为 YYYY.

比如 2023 年, 则 value 为"2023".