zoukankan      html  css  js  c++  java
  • Android:配置LitePal 3.0

    • 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

      

  • 相关阅读:
    AcWing 125. 耍杂技的牛
    AcWing 148. 合并果子
    AcWing 907. 区间覆盖
    AcWing 908. 最大不相交区间数量
    AcWing 906. 区间分组
    AcWing 905. 区间选点
    AcWing 285. 没有上司的舞会
    AcWing 1049. 大盗阿福
    AcWing 901. 滑雪
    AcWing 91. 最短Hamilton路径
  • 原文地址:https://www.cnblogs.com/Seraph1999/p/12690555.html
Copyright © 2011-2022 走看看