- java.lang.Object
 - 
- org.jooq.impl.DefaultBinding<T,U>
 
 
- 
- All Implemented Interfaces:
 Serializable,Binding<T,U>
public class DefaultBinding<T,U> extends Object implements Binding<T,U>
- Author:
 - Lukas Eder
 - See Also:
 - Serialized Form
 
 
- 
- 
Constructor Summary
Constructors Constructor Description DefaultBinding(Converter<T,U> converter)Deprecated.- 3.11 - [#6631] - Usebinding(Converter)instead. 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <T,U>
Binding<T,U>binding(Converter<T,U> converter)Converter<T,U>converter()A converter that can convert between the database type and the custom type.voidget(BindingGetResultSetContext<U> ctx)Get aResultSet'sOUTvalue.voidget(BindingGetSQLInputContext<U> ctx)Get aSQLInput'sOUTvalue.voidget(BindingGetStatementContext<U> ctx)Get aCallableStatement'sOUTvalue.voidregister(BindingRegisterContext<U> ctx)Register aCallableStatement'sOUTparameter.voidset(BindingSetSQLOutputContext<U> ctx)Set aSQLOutput'sINparameter.voidset(BindingSetStatementContext<U> ctx)Set aPreparedStatement'sINparameter.voidsql(BindingSQLContext<U> ctx)Generate SQL code for the bind variable.StringtoString() 
 - 
 
- 
- 
Constructor Detail
- 
DefaultBinding
@Deprecated public DefaultBinding(Converter<T,U> converter)
Deprecated.- 3.11 - [#6631] - Usebinding(Converter)instead. 
 - 
 
- 
Method Detail
- 
converter
public Converter<T,U> converter()
Description copied from interface:BindingA converter that can convert between the database type and the custom type. 
- 
sql
public void sql(BindingSQLContext<U> ctx) throws SQLException
Description copied from interface:BindingGenerate SQL code for the bind variable.Implementations should generate SQL code onto
BindingSQLContext.render(), given the context's bind variable located atBindingSQLContext.value(). Examples of such SQL code are:"?": Default implementations can simply generate a question mark.
"123": Implementations may choose to inline bind variables to influence execution plan generation.
RenderContext.paramType()contains information whether inlined bind variables are expected in the current context.
"CAST(? AS DATE)": Cast a database to a more specific type. This can be useful in databases like Oracle, which map bothDATEandTIMESTAMPSQL types toTimestamp.
RenderContext.castMode()may contain some hints about whether casting is suggested in the current context.
"?::json": Vendor-specific bind variables can be supported, e.g.SQLDialect.POSTGRES's JSON data type.
Implementations must provide consistent behaviour between
Binding.sql(BindingSQLContext)andBinding.set(BindingSetStatementContext), i.e. when bind variables are inlined, then they must not be bound to thePreparedStatementinBinding.set(BindingSetStatementContext)- Specified by:
 sqlin interfaceBinding<T,U>- Parameters:
 ctx- The context object containing all argument objects.- Throws:
 SQLException- Implementations are allowed to pass on allSQLExceptions to the caller to be wrapped inDataAccessExceptions.
 
- 
register
public void register(BindingRegisterContext<U> ctx) throws SQLException
Description copied from interface:BindingRegister aCallableStatement'sOUTparameter.- Specified by:
 registerin interfaceBinding<T,U>- Parameters:
 ctx- The context object containing all argument objects.- Throws:
 SQLException- Implementations are allowed to pass on allSQLExceptions to the caller to be wrapped inDataAccessExceptions.
 
- 
set
public void set(BindingSetStatementContext<U> ctx) throws SQLException
Description copied from interface:BindingSet aPreparedStatement'sINparameter.- Specified by:
 setin interfaceBinding<T,U>- Parameters:
 ctx- The context object containing all argument objects.- Throws:
 SQLException- Implementations are allowed to pass on allSQLExceptions to the caller to be wrapped inDataAccessExceptions.
 
- 
set
public void set(BindingSetSQLOutputContext<U> ctx) throws SQLException
Description copied from interface:BindingSet aSQLOutput'sINparameter.- Specified by:
 setin interfaceBinding<T,U>- Parameters:
 ctx- The context object containing all argument objects.- Throws:
 SQLException- Implementations are allowed to pass on allSQLExceptions to the caller to be wrapped inDataAccessExceptions.
 
- 
get
public void get(BindingGetResultSetContext<U> ctx) throws SQLException
Description copied from interface:BindingGet aResultSet'sOUTvalue.Implementations are expected to produce a value by calling
BindingGetResultSetContext.value(Object), passing the resulting value to the method.- Specified by:
 getin interfaceBinding<T,U>- Parameters:
 ctx- The context object containing all argument objects.- Throws:
 SQLException- Implementations are allowed to pass on allSQLExceptions to the caller to be wrapped inDataAccessExceptions.
 
- 
get
public void get(BindingGetStatementContext<U> ctx) throws SQLException
Description copied from interface:BindingGet aCallableStatement'sOUTvalue.Implementations are expected to produce a value by calling
BindingGetStatementContext.value(Object), passing the resulting value to the method.- Specified by:
 getin interfaceBinding<T,U>- Parameters:
 ctx- The context object containing all argument objects.- Throws:
 SQLException- Implementations are allowed to pass on allSQLExceptions to the caller to be wrapped inDataAccessExceptions.
 
- 
get
public void get(BindingGetSQLInputContext<U> ctx) throws SQLException
Description copied from interface:BindingGet aSQLInput'sOUTvalue.Implementations are expected to produce a value by calling
BindingGetSQLInputContext.value(Object), passing the resulting value to the method.- Specified by:
 getin interfaceBinding<T,U>- Parameters:
 ctx- The context object containing all argument objects.- Throws:
 SQLException- Implementations are allowed to pass on allSQLExceptions to the caller to be wrapped inDataAccessExceptions.
 
 - 
 
 -