LitePal使用说明

/**
 * LitePal使用方法  增删改查
 */

private void add(){
    //普通存储
    Album album = new Album();
    album.setName("album");
    album.setPrice(10.99f);
    album.save();
    //子线程异步存储
    Album album1 = new Album();
    album1.setName("album");
    album1.setPrice(10.99f);
    album1.saveAsync().listen(new SaveCallback() {
        @Override
        public void onFinish(boolean success) {

        }
    });
}

private void delete(){
    //根据id删除
    LitePal.delete(Album.class,1);
    //根据条件删除
    LitePal.deleteAll(Album.class, "price > ?" , "350");
}

private void update(){
    //根据id更新
    Album albumToUpdate = LitePal.find(Album.class, 1);
    albumToUpdate.setPrice(20.99f); // raise the price
    albumToUpdate.save();
    //或
    Album albumToUpdate1 = new Album();
    albumToUpdate1.setPrice(20.99f); // raise the price
    albumToUpdate1.update(1);

    //根据字段更新
    Album albumToUpdate2 = new Album();
    albumToUpdate2.setPrice(20.99f); // raise the price
    albumToUpdate2.updateAll("name = ?", "album");

}

private void query(){
    //根据id查找
    Album albumToUpdate = LitePal.find(Album.class, 1);
    //根据实体获取表中全部数据
    List<Album> allAlbums = LitePal.findAll(Album.class);
    //根据条件查找
    List<Album> songs = LitePal.where("name like ? and price < ?", "song%", "200").order("price").find(Album.class);
    //子线程异步查询
    LitePal.findAllAsync(Album.class).listen(new FindMultiCallback() {
        @Override
        public <T> void onFinish(List<T> t) {
            List<Album> allAlbums = (List<Album>) t;
        }
    });
}

private  void multipleDatabase(){
    //如果你的应用程序需要多个数据库
    LitePalDB litePalDB = new LitePalDB("demo2", 1);
    litePalDB.addClassName(Singer.class.getName());
    litePalDB.addClassName(Album.class.getName());
    litePalDB.addClassName(Song.class.getName());
    LitePal.use(litePalDB);

    //如果您只想创建一个新的数据库,但与LitePal.xml具有相同的配置
    LitePalDB litePalDB1 = LitePalDB.fromDefault("newdb");
    LitePal.use(litePalDB1);


    //切换默认数据库
    LitePal.useDefault();

    //通过数据库名删除已创建的数据库
    LitePal.deleteDatabase("newdb");

}

//聚合函数  count()、sum()、average()、max()和min()
private void fuction(){
//      count()方法主要是用于统计行数的
    int result = LitePal.count(Album.class);
//      使用连缀查询,增加查询条件
    int result1 = LitePal.where("price = ?", "0").count(Album.class);

//      sum()方法主要是用于对结果进行求合的  *如果要求合的字段是非法的,如String,则返回结果是0。
    double result2 = LitePal.sum(Album.class, "price", double.class); // 也可以是float、double

//      average()方法主要是用于统计平均数的 *如果要求平均数的字段是非法的,如String,则返回结果是0。
    double result3 = LitePal.average(Album.class, "price");  // 默认返回值就是double,因为求平均数大多时候都会有小数,
                                                                      //使用double可以最大程序保留小数位的精度。

//      max()方法主要用于求出某个列中最大的数值
    double result4 = LitePal.max(Album.class, "price", double.class);

//      min()方法主要用于求出某个列中最小的数值
    double result5 = LitePal.min(Album.class, "price", double.class);


}

//      使用注解@Column可以对字段进行约束,共有4种如下约束:
//      @Column(unique = true)              //是否唯一
//      @Column(defaultValue = "unknown")   //指定字段默认值
//      @Column(nullable = false)           //是否可以为空
//      @Column(ignore = true)              //是否可以忽略
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值