Class SelectStatementDefault

java.lang.Object
org.spincast.plugins.jdbc.statements.StatementBase
org.spincast.plugins.jdbc.statements.SelectStatementDefault
All Implemented Interfaces:
SelectStatement, Statement

public class SelectStatementDefault extends StatementBase implements SelectStatement
  • Field Details

    • logger

      protected static final org.slf4j.Logger logger
  • Constructor Details

    • SelectStatementDefault

      public SelectStatementDefault(Connection connection, JdbcUtils jdbcUtils)
  • Method Details

    • getJdbcUtils

      protected JdbcUtils getJdbcUtils()
    • getStatementWithParamsAdded

      protected PreparedStatement getStatementWithParamsAdded(Connection connection)
    • selectOne

      public <T> T selectOne(ResultSetHandler<T> resultSetHandler)
      Specified by:
      selectOne in interface SelectStatement
    • selectList

      public <T> List<T> selectList(ResultSetHandler<T> resultSetHandler)
      Specified by:
      selectList in interface SelectStatement
    • selectListAndTotal

      public <T> ItemsAndTotalCount<T> selectListAndTotal(ResultSetHandler<T> resultSetHandler)
      Description copied from interface: SelectStatement
      Executes the SELECT query but also returns the total of items. It will remove the LIMIT clause if there is one to compute the total. For the generated "total" query to work there are a couple of rules : - The original query MUST start with SELECT and contains a FROM. All conditions between this SELECT keyword and the FROM keyword will be removed and replaced by a COUNT(*). - If the query contains a LIMIT clause, the last occurence will be remove and everything after it too. If your query doesn't meet those rules, you'll have to retrieve the total another way...
      Specified by:
      selectListAndTotal in interface SelectStatement
    • selectList

      protected <T> ItemsAndTotalCount<T> selectList(ResultSetHandler<T> resultSetHandler, boolean getTotal)
    • getTotalFromSelectQuery

      protected long getTotalFromSelectQuery(Connection connection)
      Returns -1 to indicate the number of items should be taken instead of the total found by a generated query.