轻量级数据库——LiteOrm的最基本使用

来源:互联网 发布:linux arp d 编辑:程序博客网 时间:2024/06/16 08:10

1.介绍

最近项目里要使用本地存储的功能,就是说,要把一些信息和数据保存在本地,这又是我之前没有接触过的,在网上找了找,发现anroid常用的数据库框架有Ormlite和GreenDao,可是使用说明看起来都好麻烦啊!后来幸运的找到了一个比较轻量级的数据库,LiteOrm,该库的作者很有特色,一直在追求简化的操作,真的好厉害啊,连我都会用了。(我玩魔兽世界的时候,也喜欢把界面弄得简洁清新,经常折腾一两个小时的插件和ui哈哈)下面给个链接,有兴趣的人可以去看看他的其他项目。
https://litesuits.com/?form=gorm
另外推荐两篇详细版的使用博客
http://blog.csdn.net/u014099894/article/details/51586500
http://www.jianshu.com/p/0d72226ef434

2.接入

首先,从他的github上下载LiteOrm的jar包,复制到libs目录。
然后在项目结构里面,选择添加jar包为依赖,找到我们复制进去的jar包,按确定即可。

3.基本使用

1.保持单例

  //初始化数据库        if (liteOrm == null) {            DataBaseConfig config = new DataBaseConfig(getActivity(), dbname);            //"liteorm.db"是数据库名称,名称里包含路径符号"/"则将数据库建立到该路径下,可以使用sd卡路径。 不包含则在系统默认路径下创建DB文件。            //例如 public static final String DB_NAME = SD_CARD + "/lite/orm/liteorm.db";     DataBaseConfig config = new DataBaseConfig(this, DB_NAME);            config.dbVersion = 1; // set database version            config.onUpdateListener = null; // set database update listener            //独立操作,适用于没有级联关系的单表操作,            liteOrm = LiteOrm.newSingleInstance(config);            //级联操作,适用于多表级联操作            // liteOrm=LiteOrm.newCascadeInstance(config);        }        liteOrm.setDebugged(true); // open the log

如果整个app只有一个数据库,那么作者建议我们保持单例,不然可能会出问题。可是我第一次初始化数据库是在一个fragment里面,第二次使用是在activity里面,所以,我就在activity里面使用了liteorm = MyFragment.liteorm,这样的方法。。。不知道对不对,感觉怪怪的,但是没有报错,也可以正常使用。

2.建立一个类

一开始我不明白啥意思,后来发现,这就是你要保存的那个类,只是要加入一个自增长的id以及一些注解就行。我这里就做了个简单的类,get和set之类的就不写进来了。。

@Table("SuccessEntity")public class SuccessEntity {    // 指定自增,每个对象需要有一个主键    @PrimaryKey(AssignType.AUTO_INCREMENT)    private int id;    private String ProductName;    private String Factory;    private String Team;    private String ProduceLine;    private String ProductionDate;    private String GuaranteePeriod;    private String ProductPhoto;    private String DeliveryAddress;    private int DeliveryCount;    private String DeliveryDate;    private String User;    private String Location;    private String queryResult;    private boolean isfake;    private String date;    private String month;    private String currenttime;    ......}

3.增删改查

1.保存对象

特别简单,直接

liteOrm.save(entity);

2.查询列表

我在一个activity的onCreate()里面,查询了我本地的数据库,并把他们添加至recyclerview

//自己拼SQL语句        QueryBuilder<SuccessEntity> qb = new QueryBuilder<SuccessEntity>(SuccessEntity.class);        qb.appendOrderDescBy("id");        List<SuccessEntity> list = liteOrm.query(qb);        madapter = new Madapter(R.layout.item_result,list,this);        rvResult.setLayoutManager(new LinearLayoutManager(this));        rvResult.setAdapter(madapter);

结尾

没啥好说的。。。感觉很方便,当然我写的也太简单了,这个库其实能做很多事情,级连操作之类的。。多用用就会熟练。

0 0
原创粉丝点击