【Android】GreenDao表定义(二)

(1)@Entity实体类注解

  • @Entity:表示该类会对应创建一个数据表,表名默认类名大写
  • nameInDb:自定义数据库的名字
@Entity(
        nameInDb = "my_student",
        generateConstructors = false,
        generateGettersSetters = true,
        active = true
)
public class Student {
}
  • generateConstructors:生成带参还是不带参的构造方法
  • generateGettersSetters:是否生成set/get方法
  • active:true表示数据表只能插入,不能更新、删除等操作

<a name="r0LOJ"></a>

(2)@Id主键注解

  • 被@Id修饰的成员变量为主键,主键的基本数据类型必须是Long或者long
@Entity
public class Student {

    @Id(autoincrement = true)
    private long mId;
    private String mName;
    private int mGender;
}

<a name="Uz24d"></a>

(3)@NotNul

  • 当前数据列不能为空
@Entity
public class Student {

    private long mId;

    private String mName;

    @NotNull
    private int mGender;

    public Student() {
    }
}

<a name="SJkAD"></a>

(4)@Transient

  • 添加次标记之后不会生成数据库表的列

<br />
<a name="pumCj"></a>

(5)@Generated @Keep

  • @Generated: GreenDao运行所产生的构造函数或者方法,被此标注的代码可以变更或者下次运行时清除。
  • @Keep: 注解的代码段在GreenDao下次运行时保持不变

<a name="qSTr3"></a>

(6)@Unique

  • 唯一限制
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。