org.apache.ibatis.mapping.BoundSql.getSql()方法的使用及代码示例

x33g5p2x  于2022-01-16 转载在 其他  
字(6.9k)|赞(0)|评价(0)|浏览(148)

本文整理了Java中org.apache.ibatis.mapping.BoundSql.getSql()方法的一些代码示例,展示了BoundSql.getSql()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。BoundSql.getSql()方法的具体详情如下:
包路径:org.apache.ibatis.mapping.BoundSql
类名称:BoundSql
方法名:getSql

BoundSql.getSql介绍

暂无

代码示例

代码示例来源:origin: pagehelper/Mybatis-PageHelper

@Override
  public String getCountSql(MappedStatement ms, BoundSql boundSql, Object parameterObject, RowBounds rowBounds, CacheKey countKey) {
    return countSqlParser.getSmartCountSql(boundSql.getSql());
  }
}

代码示例来源:origin: pagehelper/Mybatis-PageHelper

public abstract String getPageSql(String sql, RowBounds rowBounds, CacheKey pageKey);

代码示例来源:origin: pagehelper/Mybatis-PageHelper

@Override
public String getCountSql(MappedStatement ms, BoundSql boundSql, Object parameterObject, RowBounds rowBounds, CacheKey countKey) {
  Page<Object> page = getLocalPage();
  String countColumn = page.getCountColumn();
  if (StringUtil.isNotEmpty(countColumn)) {
    return countSqlParser.getSmartCountSql(boundSql.getSql(), countColumn);
  }
  return countSqlParser.getSmartCountSql(boundSql.getSql());
}

代码示例来源:origin: pagehelper/Mybatis-PageHelper

@Override
public String getCountSql(MappedStatement ms, BoundSql boundSql, Object parameterObject, RowBounds rowBounds, CacheKey countKey) {
  String sql = boundSql.getSql();
  sql = replaceSql.replace(sql);
  sql = countSqlParser.getSmartCountSql(sql);
  sql = replaceSql.restore(sql);
  return sql;
}

代码示例来源:origin: pagehelper/Mybatis-PageHelper

@Override
public String getCountSql(MappedStatement ms, BoundSql boundSql, Object parameterObject, RowBounds rowBounds, CacheKey countKey) {
  String sql = boundSql.getSql();
  String cacheSql = CACHE_COUNTSQL.get(sql);
  if (cacheSql != null) {
    return cacheSql;
  } else {
    cacheSql = sql;
  }
  cacheSql = replaceSql.replace(cacheSql);
  cacheSql = countSqlParser.getSmartCountSql(cacheSql);
  cacheSql = replaceSql.restore(cacheSql);
  CACHE_COUNTSQL.put(sql, cacheSql);
  return cacheSql;
}

代码示例来源:origin: wuyouzhuguli/FEBS-Shiro

List<ParameterMapping> parameterMappings = boundSql.getParameterMappings();
String sql = boundSql.getSql().replaceAll("[\\s]+", " ");
if (!CollectionUtils.isEmpty(parameterMappings) && parameterObject != null) {

代码示例来源:origin: pagehelper/Mybatis-PageHelper

@Override
public String getPageSql(MappedStatement ms, BoundSql boundSql, Object parameterObject, RowBounds rowBounds, CacheKey pageKey) {
  String sql = boundSql.getSql();
  Page page = getLocalPage();
  //支持 order by
  String orderBy = page.getOrderBy();
  if (StringUtil.isNotEmpty(orderBy)) {
    pageKey.update(orderBy);
    sql = OrderByParser.converToOrderBySql(sql, orderBy);
  }
  if (page.isOrderByOnly()) {
    return sql;
  }
  return getPageSql(sql, page, pageKey);
}

代码示例来源:origin: hs-web/hsweb-framework

@Override
public Object plugin(Object target) {
  if (target instanceof StatementHandler) {
    StatementHandler statementHandler = (StatementHandler) target;
    MetaObject metaStatementHandler = SystemMetaObject.forObject(statementHandler);
    String sql = statementHandler.getBoundSql().getSql();
    Pager pager = Pager.getAndReset();
    String newSql = sql;
    if (sql.trim().toLowerCase().startsWith("select")) {
      if (pager != null) {
        newSql = EasyOrmSqlBuilder.getInstance()
            .getActiveDatabase().getDialect()
            .doPaging(sql, pager.pageIndex(), pager.pageSize());
      }
      Object queryEntity = statementHandler.getParameterHandler().getParameterObject();
      if (queryEntity instanceof QueryParam && ((QueryParam) queryEntity).isForUpdate()) {
        newSql = newSql + " for update";
      }
      metaStatementHandler.setValue("delegate.boundSql.sql", newSql);
    }
  }
  return Plugin.wrap(target, this);
}

代码示例来源:origin: pagehelper/Mybatis-PageHelper

/**
 * 分页查询,pageHelper转换SQL时报错with(nolock)不识别的问题,
 * 重写父类AbstractHelperDialect.getPageSql转换出错的方法。
 * 1. this.replaceSql.replace(sql);先转换成假的表名
 * 2. 然后进行SQL转换
 * 3. this.replaceSql.restore(sql);最后再恢复成真的with(nolock)
 */
@Override
public String getPageSql(MappedStatement ms, BoundSql boundSql, Object parameterObject, RowBounds rowBounds, CacheKey pageKey) {
  String sql = boundSql.getSql();
  Page page = this.getLocalPage();
  String orderBy = page.getOrderBy();
  if (StringUtil.isNotEmpty(orderBy)) {
    pageKey.update(orderBy);
    sql = this.replaceSql.replace(sql);
    sql = OrderByParser.converToOrderBySql(sql, orderBy);
    sql = this.replaceSql.restore(sql);
  }
  return page.isOrderByOnly() ? sql : this.getPageSql(sql, page, pageKey);
}

代码示例来源:origin: mybatis-book/book

@Override
public String getCountSql(BoundSql boundSql, Object parameterObject, RowBounds rowBounds, CacheKey countKey) {
  //简单嵌套实现 MySql count 查询
  return "select count(*) from (" + boundSql.getSql() + ") temp";
}

代码示例来源:origin: camunda/camunda-bpm-platform

@Override
public void batch(Statement statement) throws SQLException {
 String sql = boundSql.getSql();
 statement.addBatch(sql);
}

代码示例来源:origin: org.mybatis/mybatis

@Override
public void batch(Statement statement) throws SQLException {
 String sql = boundSql.getSql();
 statement.addBatch(sql);
}

代码示例来源:origin: baomidou/mybatis-plus

String originalSql = boundSql.getSql();
logger.debug("检查SQL是否合规,SQL:" + originalSql);
String md5Base64 = EncryptUtils.md5Base64(originalSql);

代码示例来源:origin: baomidou/mybatis-plus

String originalSql = boundSql.getSql();
Connection connection = (Connection) invocation.getArgs()[0];
DbType dbType = StringUtils.isNotEmpty(dialectType) ? DbType.getDbType(dialectType)

代码示例来源:origin: a466350665/smart

String sql = boundSql.getSql();

代码示例来源:origin: camunda/camunda-bpm-platform

@Override
public <E> List<E> query(Statement statement, ResultHandler resultHandler) throws SQLException {
 String sql = boundSql.getSql();
 statement.execute(sql);
 return resultSetHandler.<E>handleResultSets(statement);
}

代码示例来源:origin: camunda/camunda-bpm-platform

@Override
public <E> Cursor<E> queryCursor(Statement statement) throws SQLException {
 String sql = boundSql.getSql();
 statement.execute(sql);
 return resultSetHandler.<E>handleCursorResultSets(statement);
}

代码示例来源:origin: camunda/camunda-bpm-platform

@Override
protected Statement instantiateStatement(Connection connection) throws SQLException {
 String sql = boundSql.getSql();
 if (mappedStatement.getResultSetType() != null) {
  return connection.prepareCall(sql, mappedStatement.getResultSetType().getValue(), ResultSet.CONCUR_READ_ONLY);
 } else {
  return connection.prepareCall(sql);
 }
}

代码示例来源:origin: camunda/camunda-bpm-platform

@Override
public int executeNonEmptyUpdateStmt(String updateStmt, Object parameter) {
 updateStmt = dbSqlSessionFactory.mapStatement(updateStmt);
 //if mapped statement is empty, which can happens for some databases, we have no need to execute it
 MappedStatement mappedStatement = sqlSession.getConfiguration().getMappedStatement(updateStmt);
 if (mappedStatement.getBoundSql(parameter).getSql().isEmpty())
  return 0;
 return sqlSession.update(updateStmt, parameter);
}

代码示例来源:origin: camunda/camunda-bpm-platform

@Override
public int executeNonEmptyUpdateStmt(String updateStmt, Object parameter) {
 updateStmt = dbSqlSessionFactory.mapStatement(updateStmt);
 //if mapped statement is empty, which can happens for some databases, we have no need to execute it
 MappedStatement mappedStatement = sqlSession.getConfiguration().getMappedStatement(updateStmt);
 if (mappedStatement.getBoundSql(parameter).getSql().isEmpty())
  return 0;
 return sqlSession.update(updateStmt, parameter);
}

相关文章