org.hibernate.sql
Class Template

java.lang.Object
  extended by org.hibernate.sql.Template

public final class Template
extends Object

Parses SQL fragments specified in mapping documents

Author:
Gavin King

Nested Class Summary
static class Template.NoOpColumnMapper
           
 
Field Summary
static String TEMPLATE
           
 
Method Summary
static String renderOrderByStringTemplate(String orderByFragment, ColumnMapper columnMapper, SessionFactoryImplementor sessionFactory, Dialect dialect, SQLFunctionRegistry functionRegistry)
          Performs order-by template rendering allowing column mapping.
static String renderOrderByStringTemplate(String orderByFragment, Dialect dialect, SQLFunctionRegistry functionRegistry)
          Performs order-by template rendering without column mapping.
static String renderWhereStringTemplate(String sqlWhereString, Dialect dialect, SQLFunctionRegistry functionRegistry)
           
static String renderWhereStringTemplate(String sqlWhereString, String placeholder, Dialect dialect)
          Deprecated. Only intended for annotations usage; use renderWhereStringTemplate(String, String, Dialect, SQLFunctionRegistry) instead
static String renderWhereStringTemplate(String sqlWhereString, String placeholder, Dialect dialect, SQLFunctionRegistry functionRegistry)
          Takes the where condition provided in the mapping attribute and interpolates the alias.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TEMPLATE

public static final String TEMPLATE
See Also:
Constant Field Values
Method Detail

renderWhereStringTemplate

public static String renderWhereStringTemplate(String sqlWhereString,
                                               Dialect dialect,
                                               SQLFunctionRegistry functionRegistry)

renderWhereStringTemplate

public static String renderWhereStringTemplate(String sqlWhereString,
                                               String placeholder,
                                               Dialect dialect)
Deprecated. Only intended for annotations usage; use renderWhereStringTemplate(String, String, Dialect, SQLFunctionRegistry) instead

Same functionality as renderWhereStringTemplate(String, String, Dialect, SQLFunctionRegistry), except that a SQLFunctionRegistry is not provided (i.e., only the dialect-defined functions are considered). This is only intended for use by the annotations project until the many-to-many/map-key-from-target-table feature is pulled into core.


renderWhereStringTemplate

public static String renderWhereStringTemplate(String sqlWhereString,
                                               String placeholder,
                                               Dialect dialect,
                                               SQLFunctionRegistry functionRegistry)
Takes the where condition provided in the mapping attribute and interpolates the alias. Handles subselects, quoted identifiers, quoted strings, expressions, SQL functions, named parameters.

Parameters:
sqlWhereString - The string into which to interpolate the placeholder value
placeholder - The value to be interpolated into the the sqlWhereString
dialect - The dialect to apply
functionRegistry - The registry of all sql functions
Returns:
The rendered sql fragment

renderOrderByStringTemplate

public static String renderOrderByStringTemplate(String orderByFragment,
                                                 Dialect dialect,
                                                 SQLFunctionRegistry functionRegistry)
Performs order-by template rendering without column mapping. An ORDER BY template has all column references "qualified" with a placeholder identified by TEMPLATE

Parameters:
orderByFragment - The order-by fragment to render.
dialect - The SQL dialect being used.
functionRegistry - The SQL function registry
Returns:
The rendered ORDER BY template.
See Also:
renderOrderByStringTemplate(String,ColumnMapper,SessionFactoryImplementor,Dialect,SQLFunctionRegistry)

renderOrderByStringTemplate

public static String renderOrderByStringTemplate(String orderByFragment,
                                                 ColumnMapper columnMapper,
                                                 SessionFactoryImplementor sessionFactory,
                                                 Dialect dialect,
                                                 SQLFunctionRegistry functionRegistry)
Performs order-by template rendering allowing column mapping. An ORDER BY template has all column references "qualified" with a placeholder identified by TEMPLATE which can later be used to easily inject the SQL alias.

Parameters:
orderByFragment - The order-by fragment to render.
columnMapper - The column mapping strategy to use.
sessionFactory - The session factory.
dialect - The SQL dialect being used.
functionRegistry - The SQL function registry
Returns:
The rendered ORDER BY template.


Copyright © 2001-2010 Red Hat, Inc. All Rights Reserved.