Android数据库框架之LitePal

简述

LitePal是郭神(郭霖)在2014年的杰作,Github地址:LitePal。LitePal是一款开源的Android数据库框架,它采用了对象关系映射(ORM)的模式,并将我们平时开发时最常用到的一些数据库功能进行了封装,使得不用编写一行SQL语句就可以完成各种建表、増删改查的操作。并且LitePal很”轻”,jar包只有100k不到,而且近乎零配置,这一点和hibernate这类的框架有很大区别。

LitePal的基本配置

引入Jar包或依赖

dependencies 
{
    compile 'org.litepal.android:core:1.6.1'
}

配置litepal.xml

在main/assets目录下创建一个litepal.xml文件,复制以下代码进去

<?xml version="1.0" encoding="utf-8"?>  
<litepal>  
    <dbname value="数据库名" ></dbname>  
    <version value="数据库版本号,用于更新数据库" ></version>  
<list>
    <!--这里是类映射-->  
</list>  
</litepal>

配置LitePalApplication

这里有两种方式:

  • 指定application name为LitePalApplicatio
  • 自定义Application,并添加application name

    LitePal的用法

    创建实体类

    每个实体类对应一张数据表,这里创建两个实体类Song和Album

    public class Song extends DataSupport
    {

    @Column(nullable = false)
    private String name;
    private int duration;
    // generated getters and setters.
    

    }

    public class Album extends DataSupport
    {

    @Column(unique = true, defaultValue = "unknown")
    private String name;
    private float price;
    private int number;
    //generated getters and setters.
    

    }
    创建的数据表分别为:

    加入新表对就实体类的引用

    增删改查

    增加数据(保存数据)

    Album album = new Album();
    album.setName("album");
    album.setPrice(10.99f);
    album.setNumber(100);
    album.save();
    
    Song song1 = new Song();
    song1.setName("song1");
    song1.setDuration(150);
    song1.save();
    

修改数据(更新数据)

这里有提供两种操作:

  • 第一种:

    Song songToUpdate = DataSupport.find(Song.class, 1);
    songToUpdate.setDuration(300);
    songToUpdate.save();
    Toast.makeText(this, "数据已更新" , Toast.LENGTH_SHORT).show();
    
  • 第二种:

    Song songToUpdate = new Song();
    songToUpdate.setDuration(300); // raise the price
    songToUpdate.update(1);
    

    删除数据

    这里也有两种操作:

  • 删除某一条件

    DataSupport.delete(Song.class, 1);
    
  • 删除满足条件所有
    DataSupport.deleteAll(Song.class, “duration > ?”, “100”);

    查找数据

    List allSongs = DataSupport.findAll(Song.class);

参考:
LitePalSample

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值