日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 数据库 LiteOrm 的使用

發布時間:2024/9/30 Android 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 数据库 LiteOrm 的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、什么是 LiteOrm

? ? ? LiteOrm是一個小巧、強大、比系統自帶數據庫操作性能快1倍的 android ORM 框架類庫,開發者一行代碼實現數據庫的增刪改查操作,以及實體關系的持久化和自動映射。

?

2、github地址

? ? ??https://github.com/litesuits/android-lite-orm

?

3、使用

? ? ?下載最新的jar 包,然后導入到項目中

?

4、創建 orm 實例

? ??一個數據庫對應一個LiteOrm的實例,如果一個App只有一個數據庫,那么LiteOrm應該是全局單例的。 如果多次新建LiteOrm實例,系統會提示你應該關閉之前的數據庫,也可能會引起其他未知錯誤。

? ?保持單例:

static LiteOrm liteOrm;if (liteOrm == null) {liteOrm = LiteOrm.newSingleInstance(this, "liteorm.db"); } liteOrm.setDebugged(true); // open the log

?

?為了在項目中使用方便,我們創建了一個?DatabaseManager ?工具類

?

package com.app.liteorm;import com.litesuits.orm.LiteOrm; import com.litesuits.orm.db.assit.QueryBuilder;import java.util.List;/*** Created by ${zyj} on 2016/7/4.*/ public class DatabaseManager {private static LiteOrm liteOrm;private static DatabaseManager ourInstance = new DatabaseManager();private DatabaseManager() {liteOrm = LiteOrm.newCascadeInstance( MyAppLication.getContext() , "wifi.db" ) ;}public static DatabaseManager getInstance() {return ourInstance;}/*** 插入一條記錄* @param t*/public <T> long insert(T t) {return liteOrm.save(t);}/*** 插入所有記錄* @param list*/public <T> void insertAll(List<T> list) {liteOrm.save(list);}/*** 查詢所有* @param cla* @return*/public <T> List<T> getQueryAll(Class<T> cla) {return liteOrm.query(cla);}/*** 查詢 某字段 等于 Value的值* @param cla* @param field* @param value* @return*/public <T> List<T> getQueryByWhere(Class<T> cla, String field, String[] value) {return liteOrm.<T>query(new QueryBuilder(cla).where(field + "=?", value));}/*** 查詢 某字段 等于 Value的值 可以指定從1-20,就是分頁* @param cla* @param field* @param value* @param start* @param length* @return*/public <T> List<T> getQueryByWhereLength(Class<T> cla, String field, String[] value, int start, int length) {return liteOrm.<T>query(new QueryBuilder(cla).where(field + "=?", value).limit(start, length));}/*** 刪除一個數據* @param t* @param <T>*/public <T> void delete( T t){liteOrm.delete( t ) ;}/*** 刪除一個表* @param cla* @param <T>*/public <T> void delete( Class<T> cla ){liteOrm.delete( cla ) ;}/*** 刪除集合中的數據* @param list* @param <T>*/public <T> void deleteList( List<T> list ){liteOrm.delete( list ) ;}/*** 刪除數據庫*/public void deleteDatabase(){liteOrm.deleteDatabase() ;}}

使用

package com.app.liteorm;import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View;import java.util.ArrayList; import java.util.List;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);final TestModel testModel = new TestModel() ;testModel.setId( 1001 ) ;testModel.setName( "jack" ) ;testModel.setPassword( "123456" ) ;testModel.setLogin( true );TestModel testMode2 = new TestModel() ;testMode2.setId( 1002 ) ;testMode2.setName( "jack2" ) ;testMode2.setPassword( "123456" ) ;testMode2.setLogin( false );final List<TestModel> list = new ArrayList<>() ;list.add( testModel ) ;list.add( testMode2 ) ;//插入一條數據DatabaseManager.getInstance().insert( testModel ) ;//插入一個集合DatabaseManager.getInstance().insertAll( list ) ;//查詢所有List<TestModel> queryList = DatabaseManager.getInstance().getQueryAll( TestModel.class ) ;//刪除一個數據findViewById( R.id.delete_object ).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {DatabaseManager.getInstance().delete( testModel );}});//刪除一個集合findViewById( R.id.delete_database ).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {DatabaseManager.getInstance().deleteList( list );}});//刪除一個表findViewById( R.id.delete_table ).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {DatabaseManager.getInstance().delete( TestModel.class );}});//刪除整個數據庫findViewById( R.id.delete_database ).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {DatabaseManager.getInstance().deleteDatabase();}});} }

  

5、相關代碼已上傳至?github   

?

參考

Android ORM框架 LiteOrm使用

?

總結

以上是生活随笔為你收集整理的Android 数据库 LiteOrm 的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。