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","女");




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