/** * 批量插入时增加事务,不然就是卡得一逼啊... * * @param list */ public void saveList(List<? extends Object> list) { if (list == null || list.size() == 0) { return; } checkTableExist(list.get(0).getClass()); db.beginTransaction(); for (Object obj : list) { exeSqlInfo(SqlBuilder.buildInsertSql(obj)); } db.setTransactionSuccessful(); db.endTransaction(); }
/** * 根据主键删除数据 * * @param clazz 要删除的实体类 * @param id 主键值 */ public void deleteById(Class<?> clazz, Object id) { checkTableExist(clazz); exeSqlInfo(SqlBuilder.buildDeleteSql(clazz, id)); }
/** * 删除数据 * * @param entity entity的主键不能为空 */ public void delete(Object entity) { checkTableExist(entity.getClass()); exeSqlInfo(SqlBuilder.buildDeleteSql(entity)); }
/** * 根据条件更新数据 * * @param entity * @param strWhere 条件为空的时候,将会更新所有的数据 */ public void update(Object entity, String strWhere) { checkTableExist(entity.getClass()); exeSqlInfo(SqlBuilder.getUpdateSqlAsSqlInfo(entity, strWhere)); }
/** * 更新数据 (主键ID必须不能为空) * * @param entity */ public void update(Object entity) { checkTableExist(entity.getClass()); exeSqlInfo(SqlBuilder.getUpdateSqlAsSqlInfo(entity)); }
/** * 保存数据库,速度要比save快 * * @param entity */ public void save(Object entity) { checkTableExist(entity.getClass()); exeSqlInfo(SqlBuilder.buildInsertSql(entity)); }