- LitePal是一款开源的Android数据库框架,采用了对象关系映射(ORM)的模式,将平时开发时最常用的一些数据库功能进行了封装,使得开发者不用编写一行SQL语句就可以完成各种建表、増删改查的操作。
- 要使用LitePal 3.0,第一步就是编辑app/build.gradle文件,在dependencies闭包中添加如下内容:
implementation 'org.litepal.android:java:3.0.0'
-
添加完依赖之后,还需要配置litepal.xml文件。右击app/src/main目录–>New–>Directory,创建一个assets目录(也可以app/src/main目录–>New–>Folder->Assets Folder),然后在assets目录下再新建一个litepal.xml文件,并对litepal.xml文件进行编辑,写入如下内容:
1 <?xml version="1.0" encoding="utf-8"?> 2 <litepal> 3 <dbname value="demo" /> 4 5 <version value="1" /> 6 7 <list> 8 <mapping class="com.example.litepal_test.Book"></mapping> 9 </list> 10 </litepal>
以上代码是添加了一个Book类的映射,其中dbname标签用于指定数据库名, version标签用于指定数据库版本号, list标签用于指定所有的映射模型(mapping 标签中的"com.example.litepal_test"为项目的包名,注意要替换成自己的包名)。
- 最后只需要在AndroidManifest.xml中配置一下LitePalApplication就能使用LitePal了!
<manifest xmlns:android="http://schemas.android.com/apk/res/android" ………… <application android:name="org.litepal.LitePalApplication" ………… ………… </application> </manifest>
- 值得一提的是,在LitePal 3.0中,DataSupport已经被弃用,改用LitePalSupport 。假设要建立一个Book类的表,并对该表进行CRUD操作,需要使该类继承LitePalSupport.如下所示:
1 public class Book extends LitePalSupport { 2 private String name; 3 private String author; 4 private double price; //书名、作者、价格 5 6 public String getName() { 7 return name; 8 } 9 10 public void setName(String name) { 11 this.name = name; 12 } 13 14 public String getAuthor() { 15 return author; 16 } 17 18 public void setAuthor(String author) { 19 this.author = author; 20 } 21 22 public double getPrice() { 23 return price; 24 } 25 26 public void setPrice(double price) { 27 this.price = price; 28 } 29 }
- 现在只要对数据库有任何操作,指定的数据库表就会自动被创建。比如获取SQLiteDatabase实例:
SQLiteDatabase db = LitePal.getDatabase();
- 文章的最后,附上LitePal项目的主页:https://github.com/LitePalFramework/LitePal
- CSDN地址:https://blog.csdn.net/qq_43529443/article/details/90900623