• 如果对象数据需要按数据库表的方式存储,则继承OCBase。

    public class OcOrg extends OCBase {
        private String orgName;
        private String orgNo;
    }
  • 如果对象数据只用来展示,不进行查询,为了性能和存储方便,可按Json方式存储,继承BaseJsonObject。

    public class OcContact extends BaseJsonObject {
        private String type;
        private String value;
    }
  • 日期字段定义:需增加日期格式化注解,@JsonFormat为Jackson注解,@JsonAdapter为Gson注解。

    因Spring Boot默认的Json序列化为Jackson,平台代码中进行对象转换时用的是Gson,故需增加两个注解。

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @JsonAdapter(OCDateTypeAdapter.class) //如果格式为带时分秒的,则使用 OCDateTimeTypeAdapter
    private Date birthday;
  • 字段Title配置:使用@OcColumn注解。方便前端配置页面。

    @OcColumn(title = "用户名")
    private String username;
  • Lombok:使用@Data注解。

    @Data
    public class OcUser extends OCBase {
    }
  • 字段类型:注意不要使用Java基本类型,要使用基本类型的包装类。

    Byte
    Short
    Integer
    Long
    Double
    Float
    Boolean
    String
    java.util.Date
    java.time.LocalDate;
    BigDecimal
    BigInteger