Class DefaultDialect

  • All Implemented Interfaces:
    Dialect

    public class DefaultDialect
    extends java.lang.Object
    implements Dialect
    • Constructor Summary

      Constructors 
      Constructor Description
      DefaultDialect()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getColumnName​(java.lang.reflect.Field field)  
      LoadBinder getJSonLoadBinder​(java.lang.Class<?> fieldClass)  
      SaveBinder getJSonSaveBinder​(java.lang.Class<?> fieldClass)  
      LoadBinder getLoadBinder​(java.lang.Class<?> fieldType)  
      EntityProperties getProperties​(java.lang.Class<?> entityClass)  
      SaveBinder getSaveBinder​(java.lang.Class<?> fieldType)  
      java.lang.String getSqlForDelete​(java.lang.String tableName)  
      java.lang.String getSqlForInsert​(java.lang.String tableName, java.util.Collection<java.lang.String> mutableColumns)
      This method provides the leading part of INSERT-statement, up until VALUES-word (inclusive)
      java.lang.String getSqlForSelect​(java.lang.String tableName, java.util.Collection<java.lang.String> columns)  
      java.lang.String getSqlForUpdate​(java.lang.String tableName, java.util.Collection<java.lang.String> mutableColumns)  
      java.lang.String getSqlForValuesClause​(java.lang.String tableName, java.util.Collection<java.lang.String> mutableColumns)
      This method provides value placeholders in parenthesis
      java.lang.String getSqlForWhere​(java.lang.String tableName, java.lang.String idColumn)  
      java.lang.String getTableName​(java.lang.Class<?> clazz)  
      protected <T> T nvl​(T value, java.sql.ResultSet rs)  
      protected java.lang.String toSnakeCase​(java.lang.String s)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DefaultDialect

        public DefaultDialect()
    • Method Detail

      • nvl

        protected <T> T nvl​(T value,
                            java.sql.ResultSet rs)
                     throws java.sql.SQLException
        Throws:
        java.sql.SQLException
      • getLoadBinder

        public LoadBinder getLoadBinder​(java.lang.Class<?> fieldType)
        Specified by:
        getLoadBinder in interface Dialect
        Parameters:
        fieldType - field type
        Returns:
        load binder for a Java type
      • getSaveBinder

        public SaveBinder getSaveBinder​(java.lang.Class<?> fieldType)
        Specified by:
        getSaveBinder in interface Dialect
        Parameters:
        fieldType - field type
        Returns:
        save binder for a Java type
      • toSnakeCase

        protected java.lang.String toSnakeCase​(java.lang.String s)
      • getTableName

        public java.lang.String getTableName​(java.lang.Class<?> clazz)
        Specified by:
        getTableName in interface Dialect
        Parameters:
        clazz - entity class
        Returns:
        database table name for this Java class
      • getColumnName

        public java.lang.String getColumnName​(java.lang.reflect.Field field)
        Specified by:
        getColumnName in interface Dialect
        Parameters:
        field - entity field
        Returns:
        column name for this field
      • getSqlForInsert

        public java.lang.String getSqlForInsert​(java.lang.String tableName,
                                                java.util.Collection<java.lang.String> mutableColumns)
        Description copied from interface: Dialect
        This method provides the leading part of INSERT-statement, up until VALUES-word (inclusive)
        Specified by:
        getSqlForInsert in interface Dialect
        Parameters:
        tableName - table name
        mutableColumns - names of mutable columns
        Returns:
        part of INSERT-statement without value parenthesis, for example "INSERT INTO mytable VALUES"
      • getSqlForValuesClause

        public java.lang.String getSqlForValuesClause​(java.lang.String tableName,
                                                      java.util.Collection<java.lang.String> mutableColumns)
        Description copied from interface: Dialect
        This method provides value placeholders in parenthesis
        Specified by:
        getSqlForValuesClause in interface Dialect
        Parameters:
        tableName - table name
        mutableColumns - names of mutable columns
        Returns:
        for example "(?, ?, ?)"
      • getSqlForUpdate

        public java.lang.String getSqlForUpdate​(java.lang.String tableName,
                                                java.util.Collection<java.lang.String> mutableColumns)
        Specified by:
        getSqlForUpdate in interface Dialect
      • getSqlForDelete

        public java.lang.String getSqlForDelete​(java.lang.String tableName)
        Specified by:
        getSqlForDelete in interface Dialect
      • getSqlForSelect

        public java.lang.String getSqlForSelect​(java.lang.String tableName,
                                                java.util.Collection<java.lang.String> columns)
        Specified by:
        getSqlForSelect in interface Dialect
      • getSqlForWhere

        public java.lang.String getSqlForWhere​(java.lang.String tableName,
                                               java.lang.String idColumn)
        Specified by:
        getSqlForWhere in interface Dialect