Class MySQLSpatialDialect
- java.lang.Object
-
- org.hibernate.dialect.Dialect
-
- org.hibernate.dialect.MySQLDialect
-
- org.hibernate.spatial.dialect.mysql.MySQLSpatialDialect
-
- All Implemented Interfaces:
Serializable,org.hibernate.exception.spi.ConversionContext,SpatialDialect
public class MySQLSpatialDialect extends org.hibernate.dialect.MySQLDialect implements SpatialDialect
A Dialect for MySQL with support for its spatial features- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description MySQLSpatialDialect()Constructs an instance
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcontributeTypes(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry)StringgetDWithinSQL(String columnName)Returns The SQL fragment when parsing aDWithinExpression.StringgetHavingSridSQL(String columnName)Returns the SQL fragment when parsing aHavingSridExpression.StringgetIsEmptySQL(String columnName, boolean isEmpty)Returns the SQL fragment when parsing aIsEmptyExpressionorIsNotEmptyexpression.StringgetSpatialAggregateSQL(String columnName, int aggregation)Returns the SQL fragment for the specfied Spatial aggregate expression.StringgetSpatialFilterExpression(String columnName)Returns the SQL fragment for the SQL WHERE-expression when parsingorg.hibernate.spatial.criterion.SpatialFilterExpressions into prepared statements.StringgetSpatialRelateSQL(String columnName, int spatialRelation)Returns the SQL fragment for the SQL WHERE-clause when parsingorg.hibernatespatial.criterion.SpatialRelateExpressions into prepared statements.booleansupports(SpatialFunction function)Does this dialect supports the specifiedSpatialFunction.booleansupportsFiltering()Returns true if thisSpatialDialectsupports a specific filtering function.-
Methods inherited from class org.hibernate.dialect.MySQLDialect
areStringComparisonsCaseInsensitive, buildSQLExceptionConversionDelegate, canCreateCatalog, canCreateSchema, closeQuote, dropConstraints, escapeLiteral, fixedPointNumberCastTarget, floatingPointNumberCastTarget, getAddColumnString, getAddForeignKeyConstraintString, getCastTypeName, getColumnComment, getCreateCatalogCommand, getCreateSchemaCommand, getCurrentTimestampSelectString, getDefaultMultiTableBulkIdStrategy, getDefaultMySQLStorageEngine, getDropCatalogCommand, getDropForeignKeyString, getDropSchemaCommand, getEngineKeyword, getForUpdateString, getIdentityColumnSupport, getLimitHandler, getLimitString, getNotExpression, getReadLockString, getResultSet, getSelectGUIDString, getTableComment, getTableTypeString, getUniqueDelegate, getWriteLockString, hasSelfReferentialForeignKeyBug, isCurrentTimestampSelectStringCallable, isJdbcLogWarningsEnabledByDefault, openQuote, qualifyIndexName, registerResultSetOutParameter, registerVarcharTypes, renderOrderByElement, smallIntegerCastTarget, supportsCascadeDelete, supportsCurrentTimestampSelection, supportsEmptyInList, supportsIfExistsBeforeTableName, supportsLimit, supportsLobValueChangePropogation, supportsLockTimeouts, supportsRowValueConstructorSyntax, supportsSubqueryOnMutatingTable
-
Methods inherited from class org.hibernate.dialect.Dialect
addSqlHintOrComment, appendLockHint, appendLockHint, applyLocksToSql, augmentRecognizedTableTypes, bindLimitParametersFirst, bindLimitParametersInReverseOrder, buildIdentifierHelper, buildSQLExceptionConverter, cast, cast, cast, convertToFirstRowValue, createCaseFragment, createOuterJoinFragment, defaultScrollMode, doesReadCommittedCauseWritersToBlockReaders, doesRepeatableReadCauseReadersToBlockWriters, escapeComment, forceLimitUsage, forceLobAsLastValue, forUpdateOfColumns, getAddColumnSuffixString, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getAddUniqueConstraintString, getAlterTableString, getAuxiliaryDatabaseObjectExporter, getCallableStatementSupport, getCascadeConstraintsString, getCaseInsensitiveLike, getColumnAliasExtractor, getCreateMultisetTableString, getCreateSequenceString, getCreateSequenceString, getCreateSequenceStrings, getCreateSequenceStrings, getCreateTableString, getCrossJoinSeparator, getCurrentSchemaCommand, getCurrentTimestampSQLFunctionName, getDefaultBatchLoadSizingStrategy, getDefaultProperties, getDialect, getDialect, getDropSequenceString, getDropSequenceStrings, getDropTableString, getForeignKeyExporter, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateSkipLockedString, getForUpdateSkipLockedString, getForUpdateString, getForUpdateString, getForUpdateString, getForUpdateString, getFunctions, getHibernateTypeName, getHibernateTypeName, getIndexExporter, getInExpressionCountLimit, getKeywords, getLimitString, getLobMergeStrategy, getLockingStrategy, getLowercaseFunction, getMaxAliasLength, getNameQualifierSupport, getNativeIdentifierGeneratorClass, getNativeIdentifierGeneratorStrategy, getNoColumnsInsertString, getNullColumnString, getQueryHintString, getQueryHintString, getQuerySequencesString, getReadLockString, getResultSet, getResultSet, getSchemaNameResolver, getSelectClauseNullString, getSelectSequenceNextValString, getSequenceExporter, getSequenceInformationExtractor, getSequenceNextValString, getSqlTypeDescriptorOverride, getTableExporter, getTypeName, getTypeName, getUniqueKeyExporter, getViolatedConstraintNameExtracter, getWriteLockString, hasAlterTable, inlineLiteral, isLegacyLimitHandlerBehaviorEnabled, isLockTimeoutParameterized, isTypeNameRegistered, prependComment, quote, registerColumnType, registerColumnType, registerFunction, registerHibernateType, registerHibernateType, registerKeyword, registerResultSetOutParameter, remapSqlTypeDescriptor, replaceResultVariableInOrderByClauseWithPosition, requiresCastingOfParametersInSelectClause, requiresParensForTupleDistinctCounts, supportsBindAsCallableArgument, supportsCaseInsensitiveLike, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsCommentOn, supportsExistsInSelect, supportsExpectedLobUsagePattern, supportsIfExistsAfterAlterTable, supportsIfExistsAfterConstraintName, supportsIfExistsAfterTableName, supportsIfExistsBeforeConstraintName, supportsLimitOffset, supportsNamedParameters, supportsNationalizedTypes, supportsNonQueryWithCTE, supportsNotNullUnique, supportsNoWait, supportsOuterJoinForUpdate, supportsParametersInInsertSelect, supportsPartitionBy, supportsPooledSequences, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsRowValueConstructorSyntaxInInList, supportsSequences, supportsSkipLocked, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTupleCounts, supportsTupleDistinctCounts, supportsTuplesInSubqueries, supportsUnboundedLobLocatorMaterialization, supportsUnionAll, supportsUnique, supportsUniqueConstraintInCreateAlterTable, supportsValuesList, supportsVariableLimit, toBooleanValueString, toString, transformSelectString, useFollowOnLocking, useFollowOnLocking, useInputStreamToInsertBlob, useMaxForLimit
-
-
-
-
Method Detail
-
contributeTypes
public void contributeTypes(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry)- Overrides:
contributeTypesin classorg.hibernate.dialect.Dialect
-
getSpatialRelateSQL
public String getSpatialRelateSQL(String columnName, int spatialRelation)
Description copied from interface:SpatialDialectReturns the SQL fragment for the SQL WHERE-clause when parsingorg.hibernatespatial.criterion.SpatialRelateExpressions into prepared statements.- Specified by:
getSpatialRelateSQLin interfaceSpatialDialect- Parameters:
columnName- The name of the geometry-typed column to which the relation is appliedspatialRelation- The type of spatial relation (as defined inSpatialRelation).- Returns:
- SQL fragment
SpatialRelateExpression
-
getSpatialFilterExpression
public String getSpatialFilterExpression(String columnName)
Description copied from interface:SpatialDialectReturns the SQL fragment for the SQL WHERE-expression when parsingorg.hibernate.spatial.criterion.SpatialFilterExpressions into prepared statements.- Specified by:
getSpatialFilterExpressionin interfaceSpatialDialect- Parameters:
columnName- The name of the geometry-typed column to which the filter is be applied- Returns:
- Rhe SQL fragment for the
SpatialFilterExpression
-
getSpatialAggregateSQL
public String getSpatialAggregateSQL(String columnName, int aggregation)
Description copied from interface:SpatialDialectReturns the SQL fragment for the specfied Spatial aggregate expression.- Specified by:
getSpatialAggregateSQLin interfaceSpatialDialect- Parameters:
columnName- The name of the Geometry propertyaggregation- The type ofSpatialAggregate- Returns:
- The SQL fragment for the projection
-
getDWithinSQL
public String getDWithinSQL(String columnName)
Description copied from interface:SpatialDialectReturns The SQL fragment when parsing aDWithinExpression.- Specified by:
getDWithinSQLin interfaceSpatialDialect- Parameters:
columnName- The geometry column to test against- Returns:
- The SQL fragment when parsing a
DWithinExpression.
-
getHavingSridSQL
public String getHavingSridSQL(String columnName)
Description copied from interface:SpatialDialectReturns the SQL fragment when parsing aHavingSridExpression.- Specified by:
getHavingSridSQLin interfaceSpatialDialect- Parameters:
columnName- The geometry column to test against- Returns:
- The SQL fragment for a
HavingSridExpression.
-
getIsEmptySQL
public String getIsEmptySQL(String columnName, boolean isEmpty)
Description copied from interface:SpatialDialectReturns the SQL fragment when parsing aIsEmptyExpressionorIsNotEmptyexpression.- Specified by:
getIsEmptySQLin interfaceSpatialDialect- Parameters:
columnName- The geometry columnisEmpty- Whether the geometry is tested for empty or non-empty- Returns:
- The SQL fragment for the isempty function
-
supportsFiltering
public boolean supportsFiltering()
Description copied from interface:SpatialDialectReturns true if thisSpatialDialectsupports a specific filtering function.This is intended to signal DB-support for fast window queries, or MBR-overlap queries.
- Specified by:
supportsFilteringin interfaceSpatialDialect- Returns:
- True if filtering is supported
-
supports
public boolean supports(SpatialFunction function)
Description copied from interface:SpatialDialectDoes this dialect supports the specifiedSpatialFunction.- Specified by:
supportsin interfaceSpatialDialect- Parameters:
function-SpatialFunction- Returns:
- True if this
SpatialDialectsupports the spatial function specified by the function parameter.
-
-