public abstract class BaseDao<T>
extends java.lang.Object
| 限定符和类型 | 类和说明 |
|---|---|
static interface |
BaseDao.Action |
| 限定符和类型 | 字段和说明 |
|---|---|
protected android.database.sqlite.SQLiteDatabase |
database |
protected android.database.sqlite.SQLiteOpenHelper |
helper |
protected java.util.concurrent.locks.Lock |
lock |
protected static java.lang.String |
TAG |
| 构造器和说明 |
|---|
BaseDao(android.database.sqlite.SQLiteOpenHelper helper) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
closeDatabase(android.database.sqlite.SQLiteDatabase database,
android.database.Cursor cursor) |
long |
delete(android.database.sqlite.SQLiteDatabase database,
java.lang.String whereClause,
java.lang.String[] whereArgs)
根据条件删除数据库中的数据
|
boolean |
delete(java.lang.String whereClause,
java.lang.String[] whereArgs)
根据条件删除数据库中的数据
|
boolean |
deleteAll()
删除所有数据
|
long |
deleteAll(android.database.sqlite.SQLiteDatabase database)
删除所有数据
|
boolean |
deleteList(java.util.List<android.util.Pair<java.lang.String,java.lang.String[]>> where) |
abstract android.content.ContentValues |
getContentValues(T t)
需要替换的列
|
abstract java.lang.String |
getTableName()
获取对应的表名
|
boolean |
insert(java.util.List<T> ts)
插入多条记录
|
boolean |
insert(android.database.sqlite.SQLiteDatabase database,
java.util.List<T> ts) |
long |
insert(android.database.sqlite.SQLiteDatabase database,
T t)
插入一条记录
|
boolean |
insert(T t)
插入一条记录
|
android.database.sqlite.SQLiteDatabase |
openReader() |
android.database.sqlite.SQLiteDatabase |
openWriter() |
abstract T |
parseCursorToBean(android.database.Cursor cursor)
将Cursor解析成对应的JavaBean
|
java.util.List<T> |
query(android.database.sqlite.SQLiteDatabase database,
java.lang.String[] columns,
java.lang.String selection,
java.lang.String[] selectionArgs,
java.lang.String groupBy,
java.lang.String having,
java.lang.String orderBy,
java.lang.String limit)
按条件查询对象并返回集合
|
java.util.List<T> |
query(android.database.sqlite.SQLiteDatabase database,
java.lang.String selection,
java.lang.String[] selectionArgs)
按条件查询对象并返回集合
|
java.util.List<T> |
query(java.lang.String[] columns,
java.lang.String selection,
java.lang.String[] selectionArgs,
java.lang.String groupBy,
java.lang.String having,
java.lang.String orderBy,
java.lang.String limit)
按条件查询对象并返回集合
|
java.util.List<T> |
query(java.lang.String selection,
java.lang.String[] selectionArgs)
按条件查询对象并返回集合
|
java.util.List<T> |
queryAll()
查询并返回所有对象的集合
|
java.util.List<T> |
queryAll(android.database.sqlite.SQLiteDatabase database)
查询并返回所有对象的集合
|
T |
queryOne(android.database.sqlite.SQLiteDatabase database,
java.lang.String selection,
java.lang.String[] selectionArgs)
查询满足条件的一个结果
|
T |
queryOne(java.lang.String selection,
java.lang.String[] selectionArgs)
查询满足条件的一个结果
|
boolean |
replace(android.content.ContentValues contentValues) |
boolean |
replace(java.util.List<T> ts) |
long |
replace(android.database.sqlite.SQLiteDatabase database,
android.content.ContentValues contentValues) |
boolean |
replace(android.database.sqlite.SQLiteDatabase database,
java.util.List<T> ts) |
long |
replace(android.database.sqlite.SQLiteDatabase database,
T t) |
boolean |
replace(T t)
replace 语句有如下行为特点
1. replace语句会删除原有的一条记录, 并且插入一条新的记录来替换原记录。
|
void |
startTransaction(BaseDao.Action action)
用于给外界提供事物开启的模板
|
abstract void |
unInit() |
boolean |
update(android.content.ContentValues contentValues,
java.lang.String whereClause,
java.lang.String[] whereArgs)
更新一条记录
|
long |
update(android.database.sqlite.SQLiteDatabase database,
android.content.ContentValues contentValues,
java.lang.String whereClause,
java.lang.String[] whereArgs)
更新一条记录
|
long |
update(android.database.sqlite.SQLiteDatabase database,
T t,
java.lang.String whereClause,
java.lang.String[] whereArgs)
更新一条记录
|
boolean |
update(T t,
java.lang.String whereClause,
java.lang.String[] whereArgs)
更新一条记录
|
protected static java.lang.String TAG
protected java.util.concurrent.locks.Lock lock
protected android.database.sqlite.SQLiteOpenHelper helper
protected android.database.sqlite.SQLiteDatabase database
public android.database.sqlite.SQLiteDatabase openReader()
public android.database.sqlite.SQLiteDatabase openWriter()
protected final void closeDatabase(android.database.sqlite.SQLiteDatabase database,
android.database.Cursor cursor)
public boolean insert(T t)
public long insert(android.database.sqlite.SQLiteDatabase database,
T t)
public boolean insert(java.util.List<T> ts)
public boolean insert(android.database.sqlite.SQLiteDatabase database,
java.util.List<T> ts)
public boolean deleteAll()
public long deleteAll(android.database.sqlite.SQLiteDatabase database)
public boolean delete(java.lang.String whereClause,
java.lang.String[] whereArgs)
public long delete(android.database.sqlite.SQLiteDatabase database,
java.lang.String whereClause,
java.lang.String[] whereArgs)
public boolean deleteList(java.util.List<android.util.Pair<java.lang.String,java.lang.String[]>> where)
public boolean replace(T t)
public long replace(android.database.sqlite.SQLiteDatabase database,
T t)
public boolean replace(android.content.ContentValues contentValues)
public long replace(android.database.sqlite.SQLiteDatabase database,
android.content.ContentValues contentValues)
public boolean replace(java.util.List<T> ts)
public boolean replace(android.database.sqlite.SQLiteDatabase database,
java.util.List<T> ts)
public boolean update(T t, java.lang.String whereClause, java.lang.String[] whereArgs)
public long update(android.database.sqlite.SQLiteDatabase database,
T t,
java.lang.String whereClause,
java.lang.String[] whereArgs)
public boolean update(android.content.ContentValues contentValues,
java.lang.String whereClause,
java.lang.String[] whereArgs)
public long update(android.database.sqlite.SQLiteDatabase database,
android.content.ContentValues contentValues,
java.lang.String whereClause,
java.lang.String[] whereArgs)
public java.util.List<T> queryAll(android.database.sqlite.SQLiteDatabase database)
public java.util.List<T> query(android.database.sqlite.SQLiteDatabase database, java.lang.String selection, java.lang.String[] selectionArgs)
public T queryOne(android.database.sqlite.SQLiteDatabase database, java.lang.String selection, java.lang.String[] selectionArgs)
public java.util.List<T> query(android.database.sqlite.SQLiteDatabase database, java.lang.String[] columns, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy, java.lang.String limit)
public java.util.List<T> queryAll()
public java.util.List<T> query(java.lang.String selection, java.lang.String[] selectionArgs)
public T queryOne(java.lang.String selection, java.lang.String[] selectionArgs)
public java.util.List<T> query(java.lang.String[] columns, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String groupBy, java.lang.String having, java.lang.String orderBy, java.lang.String limit)
public void startTransaction(BaseDao.Action action)
public abstract java.lang.String getTableName()
public abstract void unInit()
public abstract T parseCursorToBean(android.database.Cursor cursor)
public abstract android.content.ContentValues getContentValues(T t)