Class CaseInsensitiveColumnNameMatcher

java.lang.Object
org.jdbi.v3.core.mapper.reflect.CaseInsensitiveColumnNameMatcher
All Implemented Interfaces:
ColumnNameMatcher

public final class CaseInsensitiveColumnNameMatcher extends Object implements ColumnNameMatcher
Matches column names with identical java names, ignoring case.

Example: column names firstname or FIRSTNAME would match java name firstName.

  • Constructor Details

    • CaseInsensitiveColumnNameMatcher

      public CaseInsensitiveColumnNameMatcher()
  • Method Details

    • columnNameMatches

      public boolean columnNameMatches(String columnName, String propertyName)
      Description copied from interface: ColumnNameMatcher
      Returns whether the column name fits the given Java identifier name.
      Specified by:
      columnNameMatches in interface ColumnNameMatcher
      Parameters:
      columnName - the SQL column name
      propertyName - the Java property, field, or parameter name
      Returns:
      whether the given names are logically equivalent
    • columnNameStartsWith

      public boolean columnNameStartsWith(String columnName, String prefix)
      Description copied from interface: ColumnNameMatcher
      Return whether the column name starts with the given prefix, according to the matching strategy of this ColumnNameMatcher. This method is used by reflective mappers to short-circuit nested mapping when no column names begin with the nested prefix. By default, this method returns columnName.startWith(prefix). Third party implementations should override this method to match prefixes by the same criteria as ColumnNameMatcher.columnNameMatches(String, String).
      Specified by:
      columnNameStartsWith in interface ColumnNameMatcher
      Parameters:
      columnName - the column name to test
      prefix - the prefix to test for
      Returns:
      whether the column name begins with the prefix.
    • toString

      public String toString()
      Overrides:
      toString in class Object