結果集(ResultSet)
JDBC模組將資料查詢的結果集合統一使用IResultSet介面進行封裝並集成分頁參數,以下透過一段程式碼介紹如何使用IResultSet物件:
IResultSet<User> _results = JDBC.get().openSession(new ISessionExecutor<IResultSet<User>>() { public IResultSet<User> execute(ISession session) throws Exception { return session.find(EntitySQL.create(User.class), Page.create(1).pageSize(10)); } }); // 返回当前是否分页查询 boolean _isPaginated = _results.isPaginated(); // 当前结果集是否可用,即是否为空或元素数量为0 boolean _isAvailable = _results.isResultsAvailable(); // 返回当前页号 int _pNumber = _results.getPageNumber(); // 返回每页记录数 int _pSize = _results.getPageSize(); // 返回总页数 int _pCount = _results.getPageCount(); // 返回总记录数 long _rCount = _results.getRecordCount(); // 返回结果集数据 List<User> _users = _results.getResultData();
注意:
- Page分頁參數會影響總頁數和總記錄數的回傳值是否為0;
當執行Page.create(1).pageSize(10).count(false)時,將不進行總記錄數的count計算;
- 非分頁查詢時傳回的分頁參數值皆為0;