xUtils的jar包,网上很多,可以自己下,也可以在这个地址下:
http://yunpan.cn/cHNaQMZCDGab9 访问密码 d691
public class DBOpera<T> {
@SuppressWarnings("rawtypes")
private static DBOpera instance;
private DbUtils db;
@SuppressWarnings("rawtypes")
public static DBOpera getInstance(Context context) {
if (instance == null) {
instance = new DBOpera(context);
}
return instance;
}
private DBOpera(Context context) {
db = DbUtils.create(context);
}
// public boolean updata(Class<T> object) {
// db.execQuery("UPDATE jdy_userinfo set PHONE_NUM = '18610617014' WHERE NICKNAME = '龙年轻化工'");
// }
/**
* 保存单条数据
*
* @param object
* @return
*/
public boolean saveData(T object) {
try {
db.save(object);
return true;
} catch (DbException e) {
e.printStackTrace();
return false;
}
}
/**
* 插入多条数据
*
* @param items
* @return
*/
public boolean saveDatas(List<T> items) {
try {
db.saveAll(items);
return true;
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
/**
* 更新一条数据
*/
public boolean updateData(T object) {
try {
db.update(object);
return true;
} catch (DbException e) {
e.printStackTrace();
}
return false;
}
public boolean updataDatas(List<T> object, String columnName) {
try {
db.updateAll(object, columnName);
return true;
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
/**
* 删除单挑数据
*
* @param object
*/
public boolean delData(T object) {
try {
db.delete(object);
return true;
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
/**
* 删除多条数据
*
* @param object
* @return
*/
public boolean delDatas(List<T> object) {
try {
db.deleteAll(object);
return true;
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
/**
* 清空所有数据
*/
public boolean delAllData(Class<T> object) {
try {
db.deleteAll(object);
return true;
} catch (DbException e) {
e.printStackTrace();
}
return false;
}
/**
* 查询所有数据
*
* @param period
* 时段
* @return
*/
public List<T> queryAllData(Class<T> object) {
try {
return db.findAll(object);
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
/**
* 分页查找
*
* @param table
* 哪张表
* @param start
* 从哪条开始
* @param sum
* 查询多少条
* @return
*/
public Cursor queryMulDatas(String table, int start, int sum) {
try {
return db.execQuery("SELECT * FROM TABLE LIMIT " + start + " , "
+ sum);
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
/**
* 分页查找
*
* @param object
* 哪个类
* @param offset
* 偏移量
* @param num
* 查询多少条
* @return
*/
public List<T> queryMulDatas(Class<T> object, int offset, int num) {
try {
return db.findAll(Selector.from(object).offset(offset).limit(num));
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
/**
* 查询单个的对象
*/
public T queryFirst(Class<T> object, String stockCode) {
try {
return db.findFirst(Selector.from(object).where("stockCode", "=",
stockCode));
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
/**
* 按条件查找
*
* @param object
* @param column1
* 第一列
* @param column2
* 第二列
* @param str
* 要查找的字符串
* @return
*/
public List<T> queryDimDatas(Class<T> object, String column1,
String column2, String str) {
try {
return db.findAll(Selector.from(object)
.where(column1, "like", "%" + str + "%")
.or(column2, "like", "%" + str + "%"));
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
/**
* 删除表
*
* @param object
*/
public void deleteTable(Class<T> object) {
try {
db.dropTable(object);
} catch (DbException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
使用:
保存集合List<Bean>,获取数据库对象,并将集合保存进去
private void updateDataBase(List<MessageCenterBean> mList) {
try {
DBOpera.getInstance(mContext).saveDatas(mList);
} catch (Exception e) {
e.printStackTrace();
}
}
获取对应数据库中的集合;
@SuppressWarnings("unchecked")
protected List<MessageCenterBean> getList() {
List<MessageCenterBean> list = DBOpera.getInstance(mContext)
.queryAllData(MessageCenterBean.class);
if (list == null) {
return new ArrayList<MessageCenterBean>();
}
return list;
}
删除数据库中的集合:
@SuppressWarnings("unchecked")
private void deleData(List<MessageCenterBean> list) {
try {
DBOpera.getInstance(mContext).delDatas(list);
} catch (Exception e) {
e.printStackTrace();
}
}