Android SQLiteデータベースオープンソースフレームワークLitePal詳細説明

データベースを使用したことのある学生は、SQLiteDatabaseがデータベースを操作するとき、多くのパラメーターが面倒であると感じているはずです。オブジェクトリレーショナルマッピングモデルに基づくオープンソースデータベースフレームワークであるLitePalは、データベース操作をシンプルで使いやすいものにします。LitePalは、一般的に使用されるデータベース関数をカプセル化したもので、メソッドを呼び出す限り、データベースを簡単に追加、削除、検索できます。LitePalを使用する手順の詳細を以下に示します。

1. LitePal依存ライブラリをbuild.gradleファイルの依存関係クロージャに追加します:
コンパイル 'org.litepal.android:core:1.3.2'

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.0.1'
    testCompile 'junit:junit:4.12'
    compile 'org.litepal.android:core:1.3.2'
}

次に、画像ディレクトリに新しいlitepal.xmlファイルを作成します

ここに写真の説明を書きます

ファイルの内容:
dbname —データベース名
version —データベースバージョン
リスト—マッピングモデルを指定します

<?xml version="1.0" encoding="utf-8"?>
<litepal>
    <dbname value="B" ></dbname>

    <version value="3" ></version>

    <list>
    </list>
</litepal>

3番目に、リストファイルを変更します。

アプリケーションタグの下に追加:
android:name =” org.litepal.LitePalApplication”

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.administrator.class_listpal">

    <application
        android:name="org.litepal.LitePalApplication"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

4番目に、マッピングモデルを作成します。

1、创建类,类名设置为你需要创建的数据库表明,**如果需要进行增删查找操作则需要继承类DataSupport**;
2、声明字段,字段为你需要创建数据库表格的列名,类型对应列数据的类型;
3、给每个字段生成对应的get set  方法;
4、在刚才建立的litepal.xml文件中 list 标签下申明改成创建的类,声明格式为‘包名.类名’
<list>
        <mapping class="com.example.administrator.class_listpal.B"></mapping>
        <mapping class="com.example.administrator.class_listpal.C"></mapping>
</list>

第五に、データの追加、削除、検索操作を実現する

1.データベースを作成しますConnector.getDatabase()//データベースファイルが存在する場合は取得し、存在しない場合は作成し
ます2.データベースのバージョンを更新します

如果需要新建一个数据库表格,只需要重复步骤四新建一个类,然后将litepal.xml文件的版本加大
如果需要在原来的表格中新加一列只需要在表格对应的映射类中加入需要新增列的字段并且提供对应的get set方法,然后将litepal.xml文件的版本加大

3.データを追加する

添加数据只要将对应表格的映射类实例化在调用set方法给各列赋值,赋值后通过映射类的实例调用 save()方法保存数据。

4.データを変更する

如果需要修改数据库中的某条数据
    1、实例化一个对应映射类
    2、通过映射类的实例调用对应的需要修改的参数的set方法
    3、通过映射类调用upadteAll()方法写入修改数据的调
    将数据库中表格B中所有满足“name= bbb,address= 长沙”的数据  升高修改成“165”,性别修改成“男”
    B b = new B();
      b.setHeight(165);
      b.setGender("男");
      b.updateAll("name = ? and address= ?", "bbb", "长沙");

5.データを削除する

DataSupport.deleteAll()方法有多个参数,第一个是操作的表格名,后面的参数指定约束条件
删除表格B中升高小于160的所有数据
DataSupport.deleteAll(B.class, "Height < ?", "160");

6.データのクエリ

LitePal通过了很多种查询数据的方法,这里举例两种
查询表格B中所有升高小于160的数据
List<B> B = DataSupport.where("Height < ?","160").find(B.class);
查询表格B中符合name = A的从第offset()条开始的limit()条数据,返回select("name")列数据
 List<Book> books = DataSupport.select("name").where("name == ?","A").limit(10).offset(10).find(B.class);
元の記事34件を公開 10のような 30,000以上の訪問

おすすめ

転載: blog.csdn.net/q296264785/article/details/53758733