Android中lite-orm數據庫的使用

使用步驟

1.把lite-orm-1.9.1.jar導入libs文件下,沒有的自行百度下載即可

2.給數據庫命一個名,最好放在一個類裏例如:

public class OrmUtils {

    private static LiteOrm liteOrm;
    public static final String DB_NAME = "litedemo.db";

    public static LiteOrm getLiteOrm() {
        if (liteOrm == null) {
            liteOrm = LiteOrm.newSingleInstance(App.getInstance().getApplicationContext(), DB_NAME);
        }
        return liteOrm;
    }
}

3.創建一個數據庫的操作類,裏面要有基本的查詢,修改,刪除,添加的方法,易於操作。根據需要自行添加。例如:

public class DatabaseManager {

    /**
     * 插入一條記錄
     * @param t
     */
    public static <T> long insert(T t) {
        return OrmUtils.getLiteOrm().save(t);
    }
    /**
     * 插入所有記錄
     * @param list
     */
    public static <T> void insertAll(List<T> list) {
        OrmUtils.getLiteOrm().save(list);
    }

    /**
     * 查詢所有
     * @param cla
     * @return
     */
    public static <T> List<T> getQueryAll(Class<T> cla) {
        return OrmUtils.getLiteOrm().query(cla);
    }


    /**
     *模糊查詢
     *
     * @return
     */
    public static <T> List<T> getVageQuery(Class<T> cla,String field,String value){

        return OrmUtils.getLiteOrm().<T>query( new QueryBuilder(cla).where(field+" LIKE ?", new String[]{"%"+value+"%"}));

    }


    /**
     * 查詢  某字段 等於 Value的值
     * @param cla
     * @param field
     * @param value
     * @return
     */
    public static  <T> List<T> getQueryByWhere(Class<T> cla, String field, String[] value) {
        return OrmUtils.getLiteOrm().<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 OrmUtils.getLiteOrm().<T>query(new QueryBuilder(cla).where(field + "=?", value).limit(start, length));
    }

    /**
     * 刪除一個數據
     * @param t
     * @param <T>
     */
    public  static <T> void delete( T t){
        OrmUtils.getLiteOrm().delete( t ) ;
        Log.e("-lite-", "com.utils.OrmUtils.getLiteOrm()="+"刪除成功" );
    }

    /**
     * 刪除一個表
     * @param cla
     * @param <T>
     */
    public <T> void delete( Class<T> cla ){
        OrmUtils.getLiteOrm().delete( cla ) ;
    }

    /**
     * 刪除集合中的數據
     * @param cla
     * @param <T>
     */
    public <T> void delete( Class<T> cla ){
        OrmUtils.getLiteOrm().delete( cla ) ;
    }

    /**
     * 刪除集合中的數據
     * @param list
     * @param <T>
     */
    public static <T> void deleteList( List<T> list ){
        OrmUtils.getLiteOrm().delete( list ) ;
    }

    /**
     * 刪除數據庫
     */
    public void deleteDatabase(){
        OrmUtils.getLiteOrm().deleteDatabase() ;
    }

}

4.創建要保存的數據的表,既是新建一個modle,指定表名,主鍵,列名等等,根據需要自行添加。例如:

@Table("liteentity")
public class liteentity {

    // 指定自增,每個對象需要有一個主鍵
    @PrimaryKey(AssignType.AUTO_INCREMENT)
    private int id;
    // 默認爲true,指定列名
    @Default("true")
    @Column("name")
    public String name;
    // 默認爲true,指定列名
    @Default("true")
    @Column("sex")
    public String sex;
    public liteentity(String name, String sex) {
        this.name = name;
        this.sex = sex;
    }
}

5.現在就可以進行數據的存儲和查詢了

存儲:

liteentity entity=new liteentity(edittextTv1.getText().toString().trim(),edittextTv2.getText().toString().trim());
                DatabaseManager.insert(entity);

查詢:舉例:模糊查詢

        List<liteentity> listdata=DatabaseManager.getVageQuery(liteentity.class,"sex","女");




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章