Example usage for org.apache.ibatis.session RowBounds RowBounds

List of usage examples for org.apache.ibatis.session RowBounds RowBounds

Introduction

In this page you can find the example usage for org.apache.ibatis.session RowBounds RowBounds.

Prototype

public RowBounds(int offset, int limit) 

Source Link

Usage

From source file:com.glaf.core.service.impl.MxTablePageServiceImpl.java

License:Apache License

@SuppressWarnings({ "unchecked", "rawtypes" })
public List<Object> getTableList(String tableName, String idColumn, Map<String, String> selectColumns,
        int begin, int pageSize, List<QueryCondition> conditions,
        LinkedHashMap<String, Boolean> orderByColumns) {
    SqlExecutor sqlExecutor = QueryUtils.getMyBatisAndConditionSql(conditions);
    StringBuilder buffer = new StringBuilder();
    buffer.append(" select ");
    if (selectColumns != null && !selectColumns.isEmpty()) {
        Set<Entry<String, String>> entrySet = selectColumns.entrySet();
        for (Entry<String, String> entry : entrySet) {
            String columnName = entry.getKey();
            String columnLabel = entry.getValue();
            if (columnName != null && columnLabel != null) {
                buffer.append(columnName).append(" as ").append(columnLabel);
                buffer.append(" , ");
            }/* w  w w .j av a  2  s .c  om*/
        }
        buffer.delete(buffer.length() - 2, buffer.length());
        buffer.append(" from ").append(tableName);
    } else {
        buffer.append(" * from ").append(tableName);
    }

    buffer.append(" where 1=1 ");

    String sql = buffer.toString() + sqlExecutor.getSql();

    if (orderByColumns != null && !orderByColumns.isEmpty()) {
        buffer.delete(0, buffer.length());
        buffer.append(" order by ");
        Set<Entry<String, Boolean>> entrySet = orderByColumns.entrySet();
        for (Entry<String, Boolean> entry : entrySet) {
            String columnName = entry.getKey();
            Boolean ordinal = entry.getValue();
            if (columnName != null && ordinal != null) {
                buffer.append(columnName);
                if (ordinal.booleanValue()) {
                    buffer.append(" asc");
                } else {
                    buffer.append(" desc");
                }
                buffer.append(" ,");
            }
        }
        if (buffer.toString().endsWith(",")) {
            buffer.delete(buffer.length() - 2, buffer.length());
        }
    }

    sql = sql + buffer.toString();

    Map<String, Object> params = new java.util.HashMap<String, Object>();
    if (sqlExecutor.getParameter() instanceof Map) {
        params.putAll((Map) sqlExecutor.getParameter());
    }

    logger.debug("sql:\n" + sql);
    logger.debug("params:" + params);

    params.put("queryString", sql);

    if (begin < 0) {
        begin = 0;
    }
    if (pageSize <= 0) {
        pageSize = Paging.DEFAULT_PAGE_SIZE;
    }
    RowBounds rowBounds = new RowBounds(begin, pageSize);
    List<Object> rows = sqlSession.selectList("getSqlQueryList", params, rowBounds);
    return rows;
}

From source file:com.glaf.core.service.impl.MxTablePageServiceImpl.java

License:Apache License

public TablePage getTablePage(TablePageQuery query, int firstResult, int maxResults) {
    TablePage tablePage = new TablePage();
    String tableName = query.getTableName();
    tablePage.setTableName(tableName);/*w  ww . j  a  v a 2s . c  om*/
    int begin = query.getFirstResult();
    int pageSize = query.getMaxResults();
    if (begin < 0) {
        begin = 0;
    }
    if (pageSize <= 0) {
        pageSize = Paging.DEFAULT_PAGE_SIZE;
    }

    Integer count = (Integer) sqlSession.selectOne("getTableCount",
            Collections.singletonMap("tableName", tableName));
    if (count > 0) {
        tablePage.setTotal(count);
        RowBounds rowBounds = new RowBounds(begin, pageSize);
        List<Map<String, Object>> tableData = sqlSession.selectList("getTableData", query, rowBounds);
        tablePage.setRows(tableData);
        tablePage.setFirstResult(firstResult);
    }

    return tablePage;
}

From source file:com.glaf.core.service.impl.MxTablePageServiceImpl.java

License:Apache License

public Paging getTablePaging(TablePageQuery query, int firstResult, int maxResults) {
    Paging paging = new Paging();
    String tableName = query.getTableName();
    int begin = query.getFirstResult();
    int pageSize = query.getMaxResults();
    if (begin < 0) {
        begin = 0;/*from  w  ww  .  java  2s  . c om*/
    }
    if (pageSize <= 0) {
        pageSize = Paging.DEFAULT_PAGE_SIZE;
    }

    Integer count = (Integer) sqlSession.selectOne("getTableCount",
            Collections.singletonMap("tableName", tableName));
    if (count > 0) {
        paging.setTotal(count);
        RowBounds rowBounds = new RowBounds(begin, pageSize);
        List<Object> tableData = (List<Object>) sqlSession.selectList("getTableData", query, rowBounds);
        paging.setRows(tableData);
        int currentPage = begin / pageSize + 1;
        paging.setCurrentPage(currentPage);
    }

    return paging;
}

From source file:com.glaf.core.service.impl.WorkCalendarServiceImpl.java

License:Apache License

public List<WorkCalendar> getWorkCalendarsByQueryCriteria(int start, int pageSize, WorkCalendarQuery query) {
    RowBounds rowBounds = new RowBounds(start, pageSize);
    List<WorkCalendar> rows = sqlSessionTemplate.selectList("getWorkCalendars", query, rowBounds);
    return rows;/*from  w w  w . j  a  v  a 2 s  .c o  m*/
}

From source file:com.glaf.core.todo.service.SysTodoInstanceServiceImpl.java

License:Apache License

public List<TodoInstance> getTodoInstancesByQueryCriteria(int start, int pageSize, TodoInstanceQuery query) {
    RowBounds rowBounds = new RowBounds(start, pageSize);
    List<TodoInstance> rows = sqlSessionTemplate.selectList("getTodoInstances", query, rowBounds);
    return rows;/*  w w w.  j av a2  s.  c o  m*/
}

From source file:com.glaf.dts.service.impl.MxTransformActivityServiceImpl.java

License:Apache License

/**
 * ????/* w ww.  j  a  v  a 2 s  . c  om*/
 * 
 * @return
 */
public List<TransformActivity> getTransformActivitysByQueryCriteria(int start, int pageSize,
        TransformActivityQuery query) {
    RowBounds rowBounds = new RowBounds(start, pageSize);
    List<TransformActivity> rows = sqlSessionTemplate.selectList("getTransformActivitys", query, rowBounds);
    return rows;
}

From source file:com.glaf.dts.service.impl.MxTransformExcecutionServiceImpl.java

License:Apache License

/**
 * ????//from  w w w. ja v  a2 s. co m
 * 
 * @return
 */
public List<TransformExcecution> getTransformExcecutionsByQueryCriteria(int start, int pageSize,
        TransformExcecutionQuery query) {
    RowBounds rowBounds = new RowBounds(start, pageSize);
    List<TransformExcecution> rows = sqlSessionTemplate.selectList("getTransformExcecutions", query, rowBounds);
    return rows;
}

From source file:com.glaf.dts.service.impl.MxTransformStepServiceImpl.java

License:Apache License

/**
 * ????//w  w w  .ja v  a2s. c om
 * 
 * @return
 */
public List<TransformStep> getTransformStepsByQueryCriteria(int start, int pageSize, TransformStepQuery query) {
    RowBounds rowBounds = new RowBounds(start, pageSize);
    List<TransformStep> rows = sqlSessionTemplate.selectList("getTransformSteps", query, rowBounds);
    return rows;
}

From source file:com.glaf.dts.service.impl.MxTransformTaskServiceImpl.java

License:Apache License

/**
 * ????//from  w  w w .ja  va2  s . c o m
 * 
 * @return
 */
public List<TransformTask> getTransformTasksByQueryCriteria(int start, int pageSize, TransformTaskQuery query) {
    RowBounds rowBounds = new RowBounds(start, pageSize);
    List<TransformTask> rows = sqlSessionTemplate.selectList("getTransformTasks", query, rowBounds);
    return rows;
}

From source file:com.glaf.mail.service.impl.MxMailAccountServiceImpl.java

License:Apache License

/**
 * ????// w  w  w  .  j a v a 2s.  com
 * 
 * @return
 */
public List<MailAccount> getMailAccountsByQueryCriteria(int start, int pageSize, MailAccountQuery query) {
    RowBounds rowBounds = new RowBounds(start, pageSize);
    List<MailAccount> rows = sqlSession.selectList("getMailAccounts", query, rowBounds);
    return rows;
}