cn.schoolwow.quickdao.domain.database.dql.response.Response Maven / Gradle / Ivy
package cn.schoolwow.quickdao.domain.database.dql.response;
import cn.schoolwow.quickdao.domain.database.dql.condition.Condition;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.List;
import java.util.Map;
public interface Response {
/**
* 分页处理是否滚动
*/
Response pagingScroll(boolean pagingScroll);
/**
* 获取符合条件的总数目
*/
long count();
/**
* 更新符合条件的记录
* 前置条件:请先调用{@link Condition#addUpdate(String, Object)}方法
*/
int update();
/**
* 删除符合条件的数据库记录
*/
int delete();
/**
* 获取符合条件的数据库记录的第一条
* 若无符合条件的数据库记录,返回Null
*/
T getOne();
/**
* 获取符合条件的数据库记录的第一条
* 若无符合条件的数据库记录,返回Null
*/
E getOne(Class clazz);
/**
* 返回查询结果的第一列
*
* @param clazz 返回字段类型
*/
List getSingleColumnList(Class clazz);
/**
* 返回查询结果的第一列
*
* @param clazz 返回字段类型
*/
E getSingleColumn(Class clazz);
/**
* 返回符合条件的数据库记录
*/
List getList();
/**
* 返回符合条件的数据库记录
*/
List getList(Class clazz);
/**
* 返回符合条件的分页数据库记录.
* 此方法会返回addColumn()方法所指定的字段
* 注意:调用此方法时必须调用分页方法
*
* @see Condition#page(int, int)
*/
PageVo getPagingList();
/**
* 返回符合条件的分页数据库记录.
* 此方法会返回addColumn()方法所指定的字段
* 注意:调用此方法时必须调用分页方法
*
* @see Condition#page(int, int)
*/
PageVo getPagingList(Class clazz);
/**
* 返回符合条件的分页数据库记录.
* 此方法会返回addColumn()方法所指定的字段
* 注意:调用此方法时必须调用分页方法
*
* @see Condition#page(int, int)
*/
PageVo getSingleColumnPagingList(Class clazz);
/**
* 返回符合条件的第一条数据库记录
*/
JSONObject getObject();
/**
* 返回符合条件的数据库记录
*/
JSONArray getArray();
/**
* 返回映射对象
* @param key 映射key字段
* @param value 映射value字段
*/
Map map(String key, String value, Class keyClass, Class valueClass);
/**
* 分页处理
*/
void paging(PagingHandler pagingHandler);
/**
* 单个属性分页处理
*/
void singleColumnPaging(Class clazz, PagingHandler pagingHandler);
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy