- java.lang.Object
-
- io.ebean.config.AbstractNamingConvention
-
- io.ebean.config.UnderscoreNamingConvention
-
- All Implemented Interfaces:
NamingConvention
public class UnderscoreNamingConvention extends AbstractNamingConvention
Converts between Camel Case and Underscore based names for both table and column names (and is the default naming convention in Ebean).- Author:
- emcgreal, rbygrave
-
-
Field Summary
-
Fields inherited from class io.ebean.config.AbstractNamingConvention
databasePlatform, DEFAULT_SEQ_FORMAT, rhsPrefixLength, useForeignKeyPrefix
-
-
Constructor Summary
Constructors Constructor Description UnderscoreNamingConvention()Create with a sequence format of "{table}_seq".UnderscoreNamingConvention(String sequenceFormat)Create with a given sequence format.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetColumnFromProperty(Class<?> beanClass, String propertyName)Converts Camel case property name to underscore based column name.StringgetForeignKey(String prefix, String fkProperty)Return the foreign key column given the local and foreign properties.TableNamegetTableNameByConvention(Class<?> beanClass)Returns the last part of the class name.booleanisDigitsCompressed()Returns true if digits are compressed.booleanisForceUpperCase()Return true if the result will be upper case.voidsetDigitsCompressed(boolean digitsCompressed)Sets to true for digits to be compressed (without a leading underscore).voidsetForceUpperCase(boolean forceUpperCase)Set to true to make the result upper case.protected StringtoCamelFromUnderscore(String underscore)Convert and return the from string from underscore to camel case.protected StringtoUnderscoreFromCamel(String camelCase)Convert and return the string to underscore from camel case.-
Methods inherited from class io.ebean.config.AbstractNamingConvention
deriveM2MColumn, getCatalog, getM2MJoinTableName, getSchema, getSequenceFormat, getSequenceName, getTableName, getTableName, getTableNameFromAnnotation, hasInheritance, isEmpty, isUseForeignKeyPrefix, loadFromProperties, quoteIdentifiers, setCatalog, setDatabasePlatform, setSchema, setSequenceFormat, setUseForeignKeyPrefix
-
-
-
-
Constructor Detail
-
UnderscoreNamingConvention
public UnderscoreNamingConvention(String sequenceFormat)
Create with a given sequence format.- Parameters:
sequenceFormat- the sequence format
-
UnderscoreNamingConvention
public UnderscoreNamingConvention()
Create with a sequence format of "{table}_seq".
-
-
Method Detail
-
getTableNameByConvention
public TableName getTableNameByConvention(Class<?> beanClass)
Returns the last part of the class name.- Specified by:
getTableNameByConventionin classAbstractNamingConvention- Parameters:
beanClass- the bean class- Returns:
- the table name from class
-
getColumnFromProperty
public String getColumnFromProperty(Class<?> beanClass, String propertyName)
Converts Camel case property name to underscore based column name.- Returns:
- the column from property
-
isForceUpperCase
public boolean isForceUpperCase()
Return true if the result will be upper case.False if it will be lower case.
-
setForceUpperCase
public void setForceUpperCase(boolean forceUpperCase)
Set to true to make the result upper case.
-
isDigitsCompressed
public boolean isDigitsCompressed()
Returns true if digits are compressed.
-
setDigitsCompressed
public void setDigitsCompressed(boolean digitsCompressed)
Sets to true for digits to be compressed (without a leading underscore).
-
getForeignKey
public String getForeignKey(String prefix, String fkProperty)
Description copied from interface:NamingConventionReturn the foreign key column given the local and foreign properties.- Parameters:
prefix- the local column used to prefix the fk columnfkProperty- the property name of the foreign key- Returns:
- the foreign key column
-
toUnderscoreFromCamel
protected String toUnderscoreFromCamel(String camelCase)
Convert and return the string to underscore from camel case.
-
-