Introduced new JDBC dialect counterparts.
Signed-off-by: mipo256 <mikhailpolivakha@gmail.com> Commit message edited by Jens Schauder Original pull request #2036 Closes #2031
This commit is contained in:
@@ -32,7 +32,10 @@ public class Db2Dialect extends AbstractDialect {
|
||||
|
||||
/**
|
||||
* Singleton instance.
|
||||
*
|
||||
* @deprecated use the {@code org.springframework.data.jdbc.core.dialect.JdbcDb2Dialect} directly.
|
||||
*/
|
||||
@Deprecated(forRemoval = true)
|
||||
public static final Db2Dialect INSTANCE = new Db2Dialect();
|
||||
|
||||
private static final IdGeneration ID_GENERATION = new IdGeneration() {
|
||||
@@ -43,6 +46,7 @@ public class Db2Dialect extends AbstractDialect {
|
||||
|
||||
@Override
|
||||
public String createSequenceQuery(SqlIdentifier sequenceName) {
|
||||
|
||||
/*
|
||||
* This workaround (non-ANSI SQL way of querying sequence) exists for the same reasons it exists for {@link HsqlDbDialect}
|
||||
*
|
||||
|
||||
@@ -38,8 +38,13 @@ public class H2Dialect extends AbstractDialect {
|
||||
|
||||
/**
|
||||
* Singleton instance.
|
||||
*
|
||||
* @deprecated use either the {@code org.springframework.data.r2dbc.dialect.H2Dialect} or
|
||||
* {@code org.springframework.data.jdbc.core.dialect.JdbcH2Dialect}.
|
||||
*/
|
||||
@Deprecated(forRemoval = true)
|
||||
public static final H2Dialect INSTANCE = new H2Dialect();
|
||||
|
||||
private static final IdentifierProcessing IDENTIFIER_PROCESSING = IdentifierProcessing.create(Quoting.ANSI,
|
||||
LetterCasing.UPPER_CASE);
|
||||
private static final IdGeneration ID_GENERATION = IdGeneration.create(IDENTIFIER_PROCESSING);
|
||||
@@ -86,7 +91,7 @@ public class H2Dialect extends AbstractDialect {
|
||||
return ARRAY_COLUMNS;
|
||||
}
|
||||
|
||||
static class H2ArrayColumns implements ArrayColumns {
|
||||
protected static class H2ArrayColumns implements ArrayColumns {
|
||||
|
||||
@Override
|
||||
public boolean isSupported() {
|
||||
|
||||
@@ -26,6 +26,10 @@ import org.springframework.data.relational.core.sql.SqlIdentifier;
|
||||
*/
|
||||
public class HsqlDbDialect extends AbstractDialect {
|
||||
|
||||
/**
|
||||
* @deprecated use the {@code org.springframework.data.jdbc.core.dialect.JdbcHsqlDbDialect} directly.
|
||||
*/
|
||||
@Deprecated(forRemoval = true)
|
||||
public static final HsqlDbDialect INSTANCE = new HsqlDbDialect();
|
||||
|
||||
protected HsqlDbDialect() {}
|
||||
|
||||
@@ -43,7 +43,11 @@ public class MySqlDialect extends AbstractDialect {
|
||||
|
||||
/**
|
||||
* Singleton instance.
|
||||
*
|
||||
* @deprecated use either the {@code org.springframework.data.r2dbc.dialect.MySqlDialect} or
|
||||
* {@code org.springframework.data.jdbc.core.dialect.JdbcMySqlDialect}
|
||||
*/
|
||||
@Deprecated(forRemoval = true)
|
||||
public static final MySqlDialect INSTANCE = new MySqlDialect();
|
||||
|
||||
private final IdentifierProcessing identifierProcessing;
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
*/
|
||||
package org.springframework.data.relational.core.dialect;
|
||||
|
||||
import static java.util.Arrays.*;
|
||||
import static java.util.Arrays.asList;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
@@ -35,7 +35,11 @@ public class OracleDialect extends AnsiDialect {
|
||||
|
||||
/**
|
||||
* Singleton instance.
|
||||
*
|
||||
* @deprecated use either the {@code org.springframework.data.r2dbc.dialect.OracleDialect} or
|
||||
* {@code org.springframework.data.jdbc.core.dialect.JdbcOracleDialect}.
|
||||
*/
|
||||
@Deprecated(forRemoval = true)
|
||||
public static final OracleDialect INSTANCE = new OracleDialect();
|
||||
|
||||
private static final IdGeneration ID_GENERATION = new IdGeneration() {
|
||||
|
||||
@@ -49,13 +49,17 @@ public class PostgresDialect extends AbstractDialect {
|
||||
|
||||
/**
|
||||
* Singleton instance.
|
||||
*
|
||||
* @deprecated use either the {@code org.springframework.data.r2dbc.dialect.PostgresDialect} or
|
||||
* {@code org.springframework.data.jdbc.core.dialect.JdbcPostgresDialect}.
|
||||
*/
|
||||
@Deprecated(forRemoval = true)
|
||||
public static final PostgresDialect INSTANCE = new PostgresDialect();
|
||||
|
||||
private static final Set<Class<?>> POSTGRES_SIMPLE_TYPES = Set.of(UUID.class, URL.class, URI.class, InetAddress.class,
|
||||
Map.class);
|
||||
|
||||
private IdentifierProcessing identifierProcessing = IdentifierProcessing.create(Quoting.ANSI,
|
||||
private static final IdentifierProcessing identifierProcessing = IdentifierProcessing.create(Quoting.ANSI,
|
||||
LetterCasing.LOWER_CASE);
|
||||
|
||||
private IdGeneration idGeneration = new IdGeneration() {
|
||||
|
||||
@@ -34,7 +34,11 @@ public class SqlServerDialect extends AbstractDialect {
|
||||
|
||||
/**
|
||||
* Singleton instance.
|
||||
*
|
||||
* @deprecated use either the {@code org.springframework.data.r2dbc.dialect.SqlServerDialect} or
|
||||
* {@code org.springframework.data.jdbc.core.dialect.JdbcSqlServerDialect}.
|
||||
*/
|
||||
@Deprecated(forRemoval = true)
|
||||
public static final SqlServerDialect INSTANCE = new SqlServerDialect();
|
||||
|
||||
private static final IdentifierProcessing IDENTIFIER_PROCESSING = IdentifierProcessing
|
||||
|
||||
@@ -15,14 +15,14 @@
|
||||
*/
|
||||
package org.springframework.data.relational.core.dialect;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.mockito.Mockito.mock;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.data.relational.core.sql.From;
|
||||
import org.springframework.data.relational.core.sql.LockMode;
|
||||
import org.springframework.data.relational.core.sql.LockOptions;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.mockito.Mockito.mock;
|
||||
|
||||
/**
|
||||
* Unit tests for the {@link HsqlDbDialect}.
|
||||
*
|
||||
@@ -34,7 +34,7 @@ public class HsqlDbDialectUnitTests {
|
||||
@Test // DATAJDBC-386
|
||||
public void shouldNotSupportArrays() {
|
||||
|
||||
ArrayColumns arrayColumns = HsqlDbDialect.INSTANCE.getArraySupport();
|
||||
ArrayColumns arrayColumns = new HsqlDbDialect().getArraySupport();
|
||||
|
||||
assertThat(arrayColumns.isSupported()).isFalse();
|
||||
}
|
||||
@@ -42,7 +42,7 @@ public class HsqlDbDialectUnitTests {
|
||||
@Test // DATAJDBC-386
|
||||
public void shouldRenderLimit() {
|
||||
|
||||
LimitClause limit = HsqlDbDialect.INSTANCE.limit();
|
||||
LimitClause limit = new HsqlDbDialect().limit();
|
||||
|
||||
assertThat(limit.getClausePosition()).isEqualTo(LimitClause.Position.AFTER_ORDER_BY);
|
||||
assertThat(limit.getLimit(10)).isEqualTo("LIMIT 10");
|
||||
@@ -51,7 +51,7 @@ public class HsqlDbDialectUnitTests {
|
||||
@Test // DATAJDBC-386
|
||||
public void shouldRenderOffset() {
|
||||
|
||||
LimitClause limit = HsqlDbDialect.INSTANCE.limit();
|
||||
LimitClause limit = new HsqlDbDialect().limit();
|
||||
|
||||
assertThat(limit.getOffset(10)).isEqualTo("OFFSET 10");
|
||||
}
|
||||
@@ -59,7 +59,7 @@ public class HsqlDbDialectUnitTests {
|
||||
@Test // DATAJDBC-386
|
||||
public void shouldRenderLimitOffset() {
|
||||
|
||||
LimitClause limit = HsqlDbDialect.INSTANCE.limit();
|
||||
LimitClause limit = new HsqlDbDialect().limit();
|
||||
|
||||
assertThat(limit.getLimitOffset(20, 10)).isEqualTo("OFFSET 10 LIMIT 20");
|
||||
}
|
||||
@@ -67,7 +67,7 @@ public class HsqlDbDialectUnitTests {
|
||||
@Test // DATAJDBC-386
|
||||
public void shouldQuoteIdentifiersUsingBackticks() {
|
||||
|
||||
String abcQuoted = HsqlDbDialect.INSTANCE.getIdentifierProcessing().quote("abc");
|
||||
String abcQuoted = new HsqlDbDialect().getIdentifierProcessing().quote("abc");
|
||||
|
||||
assertThat(abcQuoted).isEqualTo("\"abc\"");
|
||||
}
|
||||
@@ -75,7 +75,7 @@ public class HsqlDbDialectUnitTests {
|
||||
@Test // DATAJDBC-498
|
||||
public void shouldRenderLock() {
|
||||
|
||||
LockClause limit = HsqlDbDialect.INSTANCE.lock();
|
||||
LockClause limit = new HsqlDbDialect().lock();
|
||||
From from = mock(From.class);
|
||||
LockOptions lockOptions = new LockOptions(LockMode.PESSIMISTIC_WRITE, from);
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ import org.springframework.data.relational.core.sql.render.SqlRenderer;
|
||||
*/
|
||||
public class MySqlDialectRenderingUnitTests {
|
||||
|
||||
private final RenderContextFactory factory = new RenderContextFactory(MySqlDialect.INSTANCE);
|
||||
private final RenderContextFactory factory = new RenderContextFactory(new MySqlDialect());
|
||||
|
||||
@BeforeEach
|
||||
public void before() {
|
||||
|
||||
@@ -35,7 +35,7 @@ public class MySqlDialectUnitTests {
|
||||
@Test // DATAJDBC-278
|
||||
public void shouldNotSupportArrays() {
|
||||
|
||||
ArrayColumns arrayColumns = MySqlDialect.INSTANCE.getArraySupport();
|
||||
ArrayColumns arrayColumns = new MySqlDialect().getArraySupport();
|
||||
|
||||
assertThat(arrayColumns.isSupported()).isFalse();
|
||||
}
|
||||
@@ -43,7 +43,7 @@ public class MySqlDialectUnitTests {
|
||||
@Test // DATAJDBC-278
|
||||
public void shouldRenderLimit() {
|
||||
|
||||
LimitClause limit = MySqlDialect.INSTANCE.limit();
|
||||
LimitClause limit = new MySqlDialect().limit();
|
||||
|
||||
assertThat(limit.getClausePosition()).isEqualTo(LimitClause.Position.AFTER_ORDER_BY);
|
||||
assertThat(limit.getLimit(10)).isEqualTo("LIMIT 10");
|
||||
@@ -52,7 +52,7 @@ public class MySqlDialectUnitTests {
|
||||
@Test // DATAJDBC-278
|
||||
public void shouldRenderOffset() {
|
||||
|
||||
LimitClause limit = MySqlDialect.INSTANCE.limit();
|
||||
LimitClause limit = new MySqlDialect().limit();
|
||||
|
||||
assertThat(limit.getOffset(10)).isEqualTo("LIMIT 10, 18446744073709551615");
|
||||
}
|
||||
@@ -60,7 +60,7 @@ public class MySqlDialectUnitTests {
|
||||
@Test // DATAJDBC-278
|
||||
public void shouldRenderLimitOffset() {
|
||||
|
||||
LimitClause limit = MySqlDialect.INSTANCE.limit();
|
||||
LimitClause limit = new MySqlDialect().limit();
|
||||
|
||||
assertThat(limit.getLimitOffset(20, 10)).isEqualTo("LIMIT 10, 20");
|
||||
}
|
||||
@@ -68,7 +68,7 @@ public class MySqlDialectUnitTests {
|
||||
@Test // DATAJDBC-386
|
||||
public void shouldQuoteIdentifiersUsingBackticks() {
|
||||
|
||||
String abcQuoted = MySqlDialect.INSTANCE.getIdentifierProcessing().quote("abc");
|
||||
String abcQuoted = new MySqlDialect().getIdentifierProcessing().quote("abc");
|
||||
|
||||
assertThat(abcQuoted).isEqualTo("`abc`");
|
||||
}
|
||||
@@ -76,7 +76,7 @@ public class MySqlDialectUnitTests {
|
||||
@Test // DATAJDBC-498
|
||||
public void shouldRenderLock() {
|
||||
|
||||
LockClause lock = MySqlDialect.INSTANCE.lock();
|
||||
LockClause lock = new MySqlDialect().lock();
|
||||
From from = mock(From.class);
|
||||
|
||||
assertThat(lock.getLock(new LockOptions(LockMode.PESSIMISTIC_WRITE, from))).isEqualTo("FOR UPDATE");
|
||||
|
||||
Reference in New Issue
Block a user