• LitePal用法详解


    一.首先我对数据库的操作基于LitePal的,是基于面向对象思想的,所以首先我先讲怎么使用LitePal

    1.在build.garde(Module:app)里面的

    1 dependencies{
    2 //添加的依赖
    3 compile 'org.litepal.android:core:1.3.2'
    4  }

    导入以上的依赖,其中1.3.2是我当前使用的版本,你们可以自己去找最新的

    2.配置litepal.xml文件。右击app/src/main目录->New->Directory,创建一个assets目录,然后

    在assets目录下再新建一个litepal.xml文件,接着编辑litepal.xl文件中的内容,如下

    1 1 <?xml version="1.0" encoding="utf-8"?>
    2 2 <litepal>
    3 3     <dbname value="Person"></dbname>
    4 4     <version value="1"></version>
    5 5     <list>
    6 6     <mapping class="cct.login.Person"></mapping>
    7 7     </list>
    8 8 </litepal>

    <dbname>标签用于指定数据库名,<version>标签用于指定数据库版本号,<list>标签用于指定所有的

    映射模型,以后就会用到,。<maping class=" ">这里面是你要生成数据库的类,因为会直接把你的类的

    属性名变成数据库对应数据表的列名。如果要多一张表,就多一个mapping,里面写上对应的类,更新数据

    库的话,只要每次在version 的value那边的值加1就可以了。

    3.最后还需要配置一下LitePalApplication,修改AnndroidManifest.xml中的代码,如下

     1 1 <application
     2  2       //只需要加下面一句就行了,其他的不用替换
     3  3         android:name="org.litepal.LitePalApplication"
     4  4         android:allowBackup="true"
     5  5         android:icon="@mipmap/ic_launcher"
     6  6         android:label="@string/app_name"
     7  7         android:supportsRtl="true"
     8  8         android:theme="@style/AppTheme">
     9  9          ......
    10 10 </application>

    以上就是LitePal的配置工作

    二.LitePal的粗略的增删改查的操作

    1.创建数据库:

    只需  Connector.getDatabase();

    2.创建数据库中的表:

    你的类要继承DataSupport,例如我需要一张Person的表

    如果你在Person表里需要name和age俩个列

    public class Person extends DataSupport{
    private String name;
    private String age;
     public String getName() {
            return useName;
        }
        public void setName(String name) {
            this.name = name;
        }
     public String getAge() {
            return useName;
        }
        public void setAge(String age) {
            this.age =age;
        }
    }

    3.添加数据

    1 Person person =new Person ();
    2 person.setName("Tom");
    3 person.setAge("10);
    4 //保存数据必须要save方法
    5 person.save();

    4.更新数据

    1 Person person =new Person ();
    2 person.setName("Jane");
    3 person.setAge("12");
    4//就会把上面的Tom和10,改为Jane和12
    5 person.updateAll(" name=? and age=?","Tom","10");

    5.删除数据

     1 DataSupport.deleteAll(Person.class,"age<?","10");//会把符合条件的数据删除掉

    2 DataSupport.deleteAll()//如果不约束条件,你就要删除表中所有数据 

    6.查询数据

    我们把查询到的数据通过日志打印出来,当然可以使用ListView了,不过出于

    简便,使用日志打印

    1 //findAll()返回值是一个Person类型的List集合
    2 List<Person> persons=DataSupport.findAll(Person.class);
    3 for(Person person:persons)
    4 {
    5 Log.d("MainActivity",person.getName());
    6 Log.d("MainActivity",person.getAge());
    7 }
    1 //select()方法用于指导查询哪几列的数据,比如只查询name这列的数据
    2 List<Person> persons=DataSupport.select("name).find(Book.class)
    3 //where()方法用于指定查询的约束条件
    4 List<Person>persons=
    5 DataSupport.where("age>?","10").find(Book.class)
    6 当然还有order,limit,offset方法了,具体我就不做介绍有兴趣的自己查阅
    7 这五个方法还可以一起连缀使用
    8 你还可以用原生态的Cursor c=DataSupport.findBySql();
  • 相关阅读:
    遍历结构体的属性和对应值
    圣诞节的整理前两周的内容2
    2018.12.11——全局变量与局部变量
    【Unity3D学习笔记】解决放大后场景消失不显示问题【转载自网络】
    圣诞节的整理前两周的内容5
    2018.12.12——前向引用、递归
    2018.12.14——函数作用域
    圣诞节的整理前两周的内容4
    圣诞节的整理前两周的内容3
    转载:%s格式化用法
  • 原文地址:https://www.cnblogs.com/cct1314520/p/6516470.html
Copyright © 2020-2023  润新知