国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

YMP-Online-Handbuch / 數據實體(Entity)

數據實體(Entity)

數據實體注解
  • @Entity:聲明一個類為數據實體對象;

    value:實體名稱(數據庫表名稱),默認采用當前類名稱;

    @Entity("tb_demo")
    public class Demo {
        //...
    }
  • @Id:聲明一個類成員為主鍵;

    無參數,配合@Property注解使用;

    @Entity("tb_demo")
    public class Demo {
    
        @Id
        @Property
        private String id;
    
        public String getId() {
            return id;
        }
    
        public void setId(String id) {
            this.id = id;
        }
    }
  • @Property:聲明一個類成員為數據實體屬性;

    name:實現屬性名稱,默認采用當前成員名稱;

    autoincrement:是否為自動增長,默認為false;

    sequenceName:序列名稱,適用于類似Oracle等數據庫,配合autoincrement參數一同使用;

    nullable:允許為空,默認為true;

    unsigned:是否為無符號,默認為false;

    length:數據長度,默認0為不限制;

    decimals:小數位數,默認0為無小數;

    type:數據類型,默認為Type.FIELD.VARCHAR;

    @Entity("tb_user")
    public class User {
    
        @Id
        @Property
        private String id;
    
        @Property(name = "user_name",
                  nullable = false,
                  length = 32)
        private String username;
    
        @Property(name = "age",
                  unsigned = true,
                  type = Type.FIELD.INT)
        private Integer age;
    
        // 省略Get/Set方法...
    }
  • @PK:聲明一個類為某數據實體的復合主鍵對象;

    無參數;

    @PK
    public class UserExtPK {
    
        @Property
        private String uid;
    
        @Property(name = "wx_id")
        private String wxId;
    
        // 省略Get/Set方法...
    }
    
    @Entity("tb_user_ext")
    public class UserExt {
    
        @Id
        private UserExtPK id;
    
        @Property(name = "open_id",
                  nullable = false,
                  length = 32)
        private String openId;
    
        // 省略Get/Set方法...
    }
  • @Readonly:聲明一個成員為只讀屬性,數據實體更新時其將被忽略;

    無參數,配合@Property注解使用;

    @Entity("tb_demo")
    public class Demo {
    
        @Id
        @Property
        private String id;
    
        @Property(name = "create_time")
        @Readonly
        private Date createTime;
    
        // 省略Get/Set方法...
    }
  • @Indexes:聲明一組數據實體的索引;

  • @Index:聲明一個數據實體的索引;

  • @Comment:注釋內容;

  • @Default:為一個成員屬性或方法參數指定默認值;

看著這么多的注解,是不是覺得編寫實體很麻煩呢,不要急,框架提供了自動生成實體的方法,往下看:)

:上面注解或注解參數中有一些是用于未來能通過實體對象直接創(chuàng)建數據庫表結構(以及SQL腳本文件)的,可以暫時忽略;