Class BeetlSqlTpl

java.lang.Object
org.nutz.dao.impl.sql.NutStatement
org.nutz.dao.impl.sql.NutSql
tech.riemann.nif.nutz.dao.sqltpl.NutSqlTpl
tech.riemann.nif.nutz.dao.sqltpl.beetl.BeetlSqlTpl
All Implemented Interfaces:
Serializable, org.nutz.dao.sql.DaoStatement, org.nutz.dao.sql.Sql

public class BeetlSqlTpl extends NutSqlTpl
BeetlSqlTpl 是基于 Beetl 模板引擎实现的 SQL 模板处理类。 它继承自 NutSqlTpl,并提供了使用 Beetl 引擎渲染 SQL 的能力。
Author:
Kerbores(kerbores@gmail.com)
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected static org.beetl.core.GroupTemplate
    自定义GroupTemplate

    Fields inherited from class NutSqlTpl

    renderComplete

    Fields inherited from class org.nutz.dao.impl.sql.NutSql

    callback, customValueAdaptor, items, paramIndex, params, placeholder, rows, sourceSql, varIndex, vars

    Fields inherited from class org.nutz.dao.impl.sql.NutStatement

    expert
  • Constructor Summary

    Constructors
    Constructor
    Description
    构造方法,初始化源 SQL 内容。
  • Method Summary

    Modifier and Type
    Method
    Description
    static org.nutz.dao.sql.Sql
    c(org.nutz.dao.sql.Sql sql)
    使用 Beetl 模板引擎渲染指定的 Sql 对象。
    static org.beetl.core.GroupTemplate
    gt()
    获取当前使用的 GroupTemplate 实例。
    protected void
    调用静态方法 c 来完成当前对象的渲染逻辑。
    static void
    setGroupTemplate(org.beetl.core.GroupTemplate gt)
    设置自定义的 GroupTemplate 实例。

    Methods inherited from class org.nutz.dao.impl.sql.NutSql

    _params_count, addBatch, appendSourceSql, changePlaceholder, clearBatch, duplicate, getOutParams, getSourceSql, literal, onAfter, onBefore, paramIndex, params, setCallback, setCondition, setEntity, setPager, setParam, setParams, setSourceSql, setValueAdaptor, setVar, setVars, varIndex, vars

    Methods inherited from class org.nutz.dao.impl.sql.NutStatement

    forceExecQuery, forPrint, getAdapterBy, getBoolean, getContext, getDouble, getDouble, getEntity, getFloat, getFloat, getInt, getInt, getList, getLong, getLong, getNumber, getObject, getResult, getSqlType, getString, getUpdateCount, isAlter, isCall, isCreate, isDelete, isDrop, isExec, isForceExecQuery, isInsert, isOther, isRun, isSelect, isUpdate, param2String, setContext, setExpert, setQueryTimeout, setSqlType, toExampleStatement, toStatement, toString

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.nutz.dao.sql.DaoStatement

    forceExecQuery, forPrint, getBoolean, getContext, getDouble, getDouble, getEntity, getFloat, getFloat, getInt, getInt, getList, getLong, getLong, getNumber, getObject, getResult, getSqlType, getString, getUpdateCount, isAlter, isCall, isCreate, isDelete, isDrop, isExec, isForceExecQuery, isInsert, isOther, isRun, isSelect, isUpdate, setExpert, setQueryTimeout, toString
  • Field Details

    • gt

      protected static volatile org.beetl.core.GroupTemplate gt
      自定义GroupTemplate

      低级: volatile——防止多线程下未初始化读

  • Constructor Details

    • BeetlSqlTpl

      public BeetlSqlTpl(String source)
      构造方法,初始化源 SQL 内容。
      Parameters:
      source - 原始 SQL 字符串内容
  • Method Details

    • c

      public static org.nutz.dao.sql.Sql c(org.nutz.dao.sql.Sql sql)
      使用 Beetl 模板引擎渲染指定的 Sql 对象。 将原始 SQL 作为模板进行解析并绑定变量后重新设置到 Sql 实例中。
      Parameters:
      sql - 需要被渲染的 Sql 实例
      Returns:
      返回原 Sql 实例以支持链式调用
    • setGroupTemplate

      public static void setGroupTemplate(org.beetl.core.GroupTemplate gt)
      设置自定义的 GroupTemplate 实例。 可用于替换默认的模板配置或资源加载方式。
      Parameters:
      gt - 用户自定义的 GroupTemplate 实例
    • gt

      public static org.beetl.core.GroupTemplate gt()
      获取当前使用的 GroupTemplate 实例。 如果未设置自定义实例,则会创建一个默认配置的 GroupTemplate。
      Returns:
      当前有效的 GroupTemplate 实例
    • render

      protected void render()
      调用静态方法 c 来完成当前对象的渲染逻辑。 此方法由父类定义为抽象方法,在此具体实现。
      Specified by:
      render in class NutSqlTpl