美文网首页
greendao2升级3、使用方式、数据库升级

greendao2升级3、使用方式、数据库升级

作者: zhongjh | 来源:发表于2017-04-16 01:42 被阅读96次

    greendao2性能上一直是android orm中最好的一个。但是前期使用方面一直有点难上手。
    现在更新greendao3后,已经十分方便的使用了!

    该连接包含简单使用,数据库升级封装,已经很全面了
    https://github.com/jp1017/GreenDAO3_Demo

    然后我再补充一下上面网址没提及的注解:

    1. 注解

    注解分为4种:
    1.@Entity注解
    2.基本属性注解
    3.索引注解
    4.关系注解

    1.1@Entity注解

    @Entity(
            // 如果该实体属于多个表单,可以使用该参数; 
            // schema = "myschema",
    
            // 标记一个实体是否处于活动状态,活动实体有 update、delete、refresh 方法。默认为 false
            active = false,
    
            // 表名,默认为类名
            nameInDb = "AWESOME_USERS",
    
            // 可以给多个属性定义索引和其他属性.
            indexes = {
                    @Index(value = "name DESC", unique = true)
            },
    
            // 标记是否创建表,默认 true。多实体对应一个表或者表已创建,不需要 greenDAO 创建时设置 false
            createInDb = true,
    
            // 是否产生所有参数构造器。默认为 true。无参构造器必定产生
            generateConstructors = true,
    
            // 如果没有 get/set 方法,是否生成。默认为 true
            generateGettersSetters = true
    )
    

    1.2基本属性注解

    • @ID

    主键 long 型,可以通过@Id(autoincrement = true)设置自增长。

    • @Property

    可以自定义一个该属性在数据库中的名称,默认情况下数据库中该属性名称是Bean对象中的 属性名但是不是以驼峰式而是以大写与下划线组合形式来命名的比如:customName将命名为 CUSTOM_NAME;注意:外键不能使用该属性;

    • @NotNull

    设置数据库表当前列不能为空

    • @Transient

    使用该注释的属性不会被存入数据库中;

    1.3索引注解

    • @Index

    为一个属性来创建一个索引(即在这个属性对应的列名上创建索引),通过name设置索引别名,也可以通过unique给索引添加约束,有name和unique两个参数,name可以为索引指定名称,unique与数据表中建立索引的unique
    含义一致

    • @Unique

    向数据库添加了一个唯一的约束

    1.4关系注解

    • @ToOne

    定义与另一个实体(一个实体对象)的关系1:1

    • @ToMany

    定义与多个实体对象的关系1:N

    2.greendao2升级greendao3

    2.1

    把实体类的有关构造方法,get.set方法,反正是有关greendao2生成的,全部删掉,再重新生成即可。

    2.2

    sqlitedatabase 替换成database

    相关文章

      网友评论

          本文标题:greendao2升级3、使用方式、数据库升级

          本文链接:https://www.haomeiwen.com/subject/ogwoattx.html