This is an automated email from the ASF dual-hosted git repository.
sunnianjun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new dcd55342886 Refactor package structure of database.core.connector
(#27515)
dcd55342886 is described below
commit dcd553428861bf76000a148790c2bc78c1a0a197
Author: Liang Zhang <[email protected]>
AuthorDate: Thu Jul 27 19:07:04 2023 +0800
Refactor package structure of database.core.connector (#27515)
* Refactor StandardJdbcUrlParser
* Add test case of StandardConnectionProperties
* Refactor ConnectionProperties
---
.../pool/creator/DataSourcePoolCreator.java | 6 +--
.../core/connector/ConnectionProperties.java | 4 +-
.../database/core/connector/{ => url}/JdbcUrl.java | 2 +-
.../core/connector/{ => url}/JdbcUrlAppender.java | 3 +-
.../connector/{ => url}/StandardJdbcUrlParser.java | 17 +++------
.../UnrecognizedDatabaseURLException.java | 2 +-
.../StandardConnectionPropertiesTest.java | 44 ++++++++++++++++++++++
.../ConnectionPropertiesParserFixture.java | 5 ++-
.../connector/{ => url}/JdbcUrlAppenderTest.java | 2 +-
.../{ => url}/StandardJdbcUrlParserTest.java | 2 +-
...abase.core.connector.ConnectionPropertiesParser | 2 +-
.../database/h2/H2ConnectionPropertiesParser.java | 7 ++--
.../mariadb/MariaDBDataSourceMetaDataTest.java | 2 +-
.../mysql/MySQLConnectionPropertiesParser.java | 4 +-
.../mysql/MySQLDataSourceMetaDataTest.java | 2 +-
.../OpenGaussConnectionPropertiesParser.java | 4 +-
.../opengauss/OpenGaussDataSourceMetaDataTest.java | 2 +-
.../oracle/OracleConnectionPropertiesParser.java | 2 +-
.../oracle/OracleDataSourceMetaDataTest.java | 2 +-
.../PostgreSQLConnectionPropertiesParser.java | 4 +-
.../PostgreSQLDataSourceMetaDataTest.java | 2 +-
.../sql92/SQL92ConnectionPropertiesParser.java | 2 +-
.../sql92/SQL92DataSourceMetaDataTest.java | 2 +-
.../SQLServerConnectionPropertiesParser.java | 2 +-
.../sqlserver/SQLServerDataSourceMetaDataTest.java | 2 +-
...rdingSpherePipelineDataSourceConfiguration.java | 4 +-
.../StandardPipelineDataSourceConfiguration.java | 4 +-
.../ingest/wal/OpenGaussLogicalReplication.java | 4 +-
.../unit/AlterStorageUnitBackendHandler.java | 4 +-
.../pipeline/cases/PipelineContainerComposer.java | 2 +-
.../container/compose/NativeContainerComposer.java | 2 +-
31 files changed, 94 insertions(+), 54 deletions(-)
diff --git
a/infra/common/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourcePoolCreator.java
b/infra/common/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourcePoolCreator.java
index f323dcff929..3e13988699a 100644
---
a/infra/common/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourcePoolCreator.java
+++
b/infra/common/src/main/java/org/apache/shardingsphere/infra/datasource/pool/creator/DataSourcePoolCreator.java
@@ -21,9 +21,9 @@ import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import lombok.SneakyThrows;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrl;
-import
org.apache.shardingsphere.infra.database.core.connector.StandardJdbcUrlParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrl;
+import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import
org.apache.shardingsphere.infra.datasource.pool.destroyer.DataSourcePoolDestroyer;
import
org.apache.shardingsphere.infra.datasource.pool.metadata.DataSourcePoolMetaData;
diff --git
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/ConnectionProperties.java
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/ConnectionProperties.java
index b611189c398..a610189eb24 100644
---
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/ConnectionProperties.java
+++
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/ConnectionProperties.java
@@ -72,7 +72,5 @@ public interface ConnectionProperties {
* @param connectionProps connection properties
* @return connections are in the same database instance or not
*/
- default boolean isInSameDatabaseInstance(final ConnectionProperties
connectionProps) {
- return getHostname().equals(connectionProps.getHostname()) &&
getPort() == connectionProps.getPort();
- }
+ boolean isInSameDatabaseInstance(ConnectionProperties connectionProps);
}
diff --git
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrl.java
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrl.java
similarity index 95%
rename from
infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrl.java
rename to
infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrl.java
index bf7cc88426e..23b84805576 100644
---
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrl.java
+++
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrl.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.infra.database.core.connector;
+package org.apache.shardingsphere.infra.database.core.connector.url;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
diff --git
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrlAppender.java
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrlAppender.java
similarity index 94%
rename from
infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrlAppender.java
rename to
infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrlAppender.java
index ce27a058465..ff1912969d2 100644
---
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrlAppender.java
+++
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrlAppender.java
@@ -15,8 +15,9 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.infra.database.core.connector;
+package org.apache.shardingsphere.infra.database.core.connector.url;
+import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory;
diff --git
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/StandardJdbcUrlParser.java
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/StandardJdbcUrlParser.java
similarity index 80%
rename from
infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/StandardJdbcUrlParser.java
rename to
infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/StandardJdbcUrlParser.java
index 52adc9a06be..297758ba520 100644
---
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/StandardJdbcUrlParser.java
+++
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/StandardJdbcUrlParser.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.infra.database.core.connector;
+package org.apache.shardingsphere.infra.database.core.connector.url;
import com.google.common.base.Splitter;
import com.google.common.base.Strings;
@@ -55,19 +55,14 @@ public final class StandardJdbcUrlParser {
*/
public JdbcUrl parse(final String jdbcUrl) {
Matcher matcher = CONNECTION_URL_PATTERN.matcher(jdbcUrl);
- if (matcher.matches()) {
- String authority = matcher.group(AUTHORITY_GROUP_KEY);
- ShardingSpherePreconditions.checkNotNull(authority, () -> new
UnrecognizedDatabaseURLException(jdbcUrl,
CONNECTION_URL_PATTERN.pattern().replaceAll("%", "%%")));
- return new JdbcUrl(parseHostname(authority), parsePort(authority),
matcher.group(PATH_GROUP_KEY),
parseQueryProperties(matcher.group(QUERY_GROUP_KEY)));
- }
- throw new UnrecognizedDatabaseURLException(jdbcUrl,
CONNECTION_URL_PATTERN.pattern().replaceAll("%", "%%"));
+ ShardingSpherePreconditions.checkState(matcher.matches(), () -> new
UnrecognizedDatabaseURLException(jdbcUrl,
CONNECTION_URL_PATTERN.pattern().replaceAll("%", "%%")));
+ String authority = matcher.group(AUTHORITY_GROUP_KEY);
+ ShardingSpherePreconditions.checkNotNull(authority, () -> new
UnrecognizedDatabaseURLException(jdbcUrl,
CONNECTION_URL_PATTERN.pattern().replaceAll("%", "%%")));
+ return new JdbcUrl(parseHostname(authority), parsePort(authority),
matcher.group(PATH_GROUP_KEY),
parseQueryProperties(matcher.group(QUERY_GROUP_KEY)));
}
private String parseHostname(final String authority) {
- if (!authority.contains(":")) {
- return authority;
- }
- return authority.split(":")[0];
+ return authority.contains(":") ? authority.split(":")[0] : authority;
}
private int parsePort(final String authority) {
diff --git
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/UnrecognizedDatabaseURLException.java
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/UnrecognizedDatabaseURLException.java
similarity index 95%
rename from
infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/UnrecognizedDatabaseURLException.java
rename to
infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/UnrecognizedDatabaseURLException.java
index 0258c4b6e0f..abf1c2c6774 100644
---
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/UnrecognizedDatabaseURLException.java
+++
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/connector/url/UnrecognizedDatabaseURLException.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.infra.database.core.connector;
+package org.apache.shardingsphere.infra.database.core.connector.url;
import
org.apache.shardingsphere.infra.util.exception.external.sql.sqlstate.XOpenSQLState;
import
org.apache.shardingsphere.infra.util.exception.external.sql.type.kernel.KernelSQLException;
diff --git
a/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/StandardConnectionPropertiesTest.java
b/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/StandardConnectionPropertiesTest.java
new file mode 100644
index 00000000000..3ae036983e7
--- /dev/null
+++
b/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/StandardConnectionPropertiesTest.java
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.shardingsphere.infra.database.core.connector;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+class StandardConnectionPropertiesTest {
+
+ @Test
+ void assertIsInSameDatabaseInstance() {
+ assertTrue(new StandardConnectionProperties("127.0.0.1", 9999, "foo",
"foo")
+ .isInSameDatabaseInstance(new
StandardConnectionProperties("127.0.0.1", 9999, "bar", "bar")));
+ }
+
+ @Test
+ void assertIsNotInSameDatabaseInstanceWithDifferentHostname() {
+ assertFalse(new StandardConnectionProperties("127.0.0.1", 9999, "foo",
"foo")
+ .isInSameDatabaseInstance(new
StandardConnectionProperties("127.0.0.2", 9999, "foo", "foo")));
+ }
+
+ @Test
+ void assertIsNotInSameDatabaseInstanceWithDifferentPort() {
+ assertFalse(new StandardConnectionProperties("127.0.0.1", 9999, "foo",
"foo")
+ .isInSameDatabaseInstance(new
StandardConnectionProperties("127.0.0.1", 8888, "foo", "foo")));
+ }
+}
diff --git
a/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/ConnectionPropertiesParserFixture.java
b/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/fixture/ConnectionPropertiesParserFixture.java
similarity index 85%
rename from
infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/ConnectionPropertiesParserFixture.java
rename to
infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/fixture/ConnectionPropertiesParserFixture.java
index 55a9f6808bb..c266e752cd1 100644
---
a/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/ConnectionPropertiesParserFixture.java
+++
b/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/fixture/ConnectionPropertiesParserFixture.java
@@ -15,7 +15,10 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.infra.database.core.connector;
+package org.apache.shardingsphere.infra.database.core.connector.fixture;
+
+import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
+import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
import java.util.Properties;
diff --git
a/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrlAppenderTest.java
b/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrlAppenderTest.java
similarity index 97%
rename from
infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrlAppenderTest.java
rename to
infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrlAppenderTest.java
index 8d113fa362b..2757038cba7 100644
---
a/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/JdbcUrlAppenderTest.java
+++
b/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/url/JdbcUrlAppenderTest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.infra.database.core.connector;
+package org.apache.shardingsphere.infra.database.core.connector.url;
import org.apache.shardingsphere.test.util.PropertiesBuilder;
import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
diff --git
a/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/StandardJdbcUrlParserTest.java
b/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/url/StandardJdbcUrlParserTest.java
similarity index 98%
rename from
infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/StandardJdbcUrlParserTest.java
rename to
infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/url/StandardJdbcUrlParserTest.java
index 0d59ab0c162..b4bd4092830 100644
---
a/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/StandardJdbcUrlParserTest.java
+++
b/infra/database/core/src/test/java/org/apache/shardingsphere/infra/database/core/connector/url/StandardJdbcUrlParserTest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.infra.database.core.connector;
+package org.apache.shardingsphere.infra.database.core.connector.url;
import org.junit.jupiter.api.Test;
diff --git
a/infra/database/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser
b/infra/database/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser
index a41c2222247..f0d746b3aec 100644
---
a/infra/database/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser
+++
b/infra/database/core/src/test/resources/META-INF/services/org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParserFixture
+org.apache.shardingsphere.infra.database.core.connector.fixture.ConnectionPropertiesParserFixture
diff --git
a/infra/database/type/h2/src/main/java/org/apache/shardingsphere/infra/database/h2/H2ConnectionPropertiesParser.java
b/infra/database/type/h2/src/main/java/org/apache/shardingsphere/infra/database/h2/H2ConnectionPropertiesParser.java
index ddb4ec89a08..ffd0a386c3d 100644
---
a/infra/database/type/h2/src/main/java/org/apache/shardingsphere/infra/database/h2/H2ConnectionPropertiesParser.java
+++
b/infra/database/type/h2/src/main/java/org/apache/shardingsphere/infra/database/h2/H2ConnectionPropertiesParser.java
@@ -20,7 +20,8 @@ package org.apache.shardingsphere.infra.database.h2;
import com.google.common.base.Strings;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.util.exception.ShardingSpherePreconditions;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -41,9 +42,7 @@ public final class H2ConnectionPropertiesParser implements
ConnectionPropertiesP
@Override
public ConnectionProperties parse(final String url, final String username,
final String catalog) {
Matcher matcher = URL_PATTERN.matcher(url);
- if (!matcher.find()) {
- throw new UnrecognizedDatabaseURLException(url,
URL_PATTERN.pattern());
- }
+ ShardingSpherePreconditions.checkState(matcher.find(), () -> new
UnrecognizedDatabaseURLException(url, URL_PATTERN.pattern()));
return new H2ConnectionProperties(getHostname(matcher),
getModel(matcher), getPort(matcher), getCatalog(matcher));
}
diff --git
a/infra/database/type/mariadb/src/test/java/org/apache/shardingsphere/infra/database/mariadb/MariaDBDataSourceMetaDataTest.java
b/infra/database/type/mariadb/src/test/java/org/apache/shardingsphere/infra/database/mariadb/MariaDBDataSourceMetaDataTest.java
index ff9facb84bf..9069ab612a9 100644
---
a/infra/database/type/mariadb/src/test/java/org/apache/shardingsphere/infra/database/mariadb/MariaDBDataSourceMetaDataTest.java
+++
b/infra/database/type/mariadb/src/test/java/org/apache/shardingsphere/infra/database/mariadb/MariaDBDataSourceMetaDataTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.infra.database.mariadb;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
diff --git
a/infra/database/type/mysql/src/main/java/org/apache/shardingsphere/infra/database/mysql/MySQLConnectionPropertiesParser.java
b/infra/database/type/mysql/src/main/java/org/apache/shardingsphere/infra/database/mysql/MySQLConnectionPropertiesParser.java
index 9464c8b58a9..a769dc73d8b 100644
---
a/infra/database/type/mysql/src/main/java/org/apache/shardingsphere/infra/database/mysql/MySQLConnectionPropertiesParser.java
+++
b/infra/database/type/mysql/src/main/java/org/apache/shardingsphere/infra/database/mysql/MySQLConnectionPropertiesParser.java
@@ -19,9 +19,9 @@ package org.apache.shardingsphere.infra.database.mysql;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrl;
+import org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrl;
import
org.apache.shardingsphere.infra.database.core.connector.StandardConnectionProperties;
-import
org.apache.shardingsphere.infra.database.core.connector.StandardJdbcUrlParser;
+import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
import java.util.Properties;
diff --git
a/infra/database/type/mysql/src/test/java/org/apache/shardingsphere/infra/database/mysql/MySQLDataSourceMetaDataTest.java
b/infra/database/type/mysql/src/test/java/org/apache/shardingsphere/infra/database/mysql/MySQLDataSourceMetaDataTest.java
index df2b8f0bcba..70233bc3879 100644
---
a/infra/database/type/mysql/src/test/java/org/apache/shardingsphere/infra/database/mysql/MySQLDataSourceMetaDataTest.java
+++
b/infra/database/type/mysql/src/test/java/org/apache/shardingsphere/infra/database/mysql/MySQLDataSourceMetaDataTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.database.mysql;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
diff --git
a/infra/database/type/opengauss/src/main/java/org/apache/shardingsphere/infra/database/opengauss/OpenGaussConnectionPropertiesParser.java
b/infra/database/type/opengauss/src/main/java/org/apache/shardingsphere/infra/database/opengauss/OpenGaussConnectionPropertiesParser.java
index 2de0e12bc17..5032b20412f 100644
---
a/infra/database/type/opengauss/src/main/java/org/apache/shardingsphere/infra/database/opengauss/OpenGaussConnectionPropertiesParser.java
+++
b/infra/database/type/opengauss/src/main/java/org/apache/shardingsphere/infra/database/opengauss/OpenGaussConnectionPropertiesParser.java
@@ -19,9 +19,9 @@ package org.apache.shardingsphere.infra.database.opengauss;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrl;
+import org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrl;
import
org.apache.shardingsphere.infra.database.core.connector.StandardConnectionProperties;
-import
org.apache.shardingsphere.infra.database.core.connector.StandardJdbcUrlParser;
+import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
import java.util.Properties;
diff --git
a/infra/database/type/opengauss/src/test/java/org/apache/shardingsphere/infra/database/opengauss/OpenGaussDataSourceMetaDataTest.java
b/infra/database/type/opengauss/src/test/java/org/apache/shardingsphere/infra/database/opengauss/OpenGaussDataSourceMetaDataTest.java
index 79a5775e59f..f47d9d43a8d 100644
---
a/infra/database/type/opengauss/src/test/java/org/apache/shardingsphere/infra/database/opengauss/OpenGaussDataSourceMetaDataTest.java
+++
b/infra/database/type/opengauss/src/test/java/org/apache/shardingsphere/infra/database/opengauss/OpenGaussDataSourceMetaDataTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.database.opengauss;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
diff --git
a/infra/database/type/oracle/src/main/java/org/apache/shardingsphere/infra/database/oracle/OracleConnectionPropertiesParser.java
b/infra/database/type/oracle/src/main/java/org/apache/shardingsphere/infra/database/oracle/OracleConnectionPropertiesParser.java
index 06f387bf80f..dc540d7213b 100644
---
a/infra/database/type/oracle/src/main/java/org/apache/shardingsphere/infra/database/oracle/OracleConnectionPropertiesParser.java
+++
b/infra/database/type/oracle/src/main/java/org/apache/shardingsphere/infra/database/oracle/OracleConnectionPropertiesParser.java
@@ -21,7 +21,7 @@ import com.google.common.base.Strings;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
import
org.apache.shardingsphere.infra.database.core.connector.StandardConnectionProperties;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import java.util.Arrays;
import java.util.List;
diff --git
a/infra/database/type/oracle/src/test/java/org/apache/shardingsphere/infra/database/oracle/OracleDataSourceMetaDataTest.java
b/infra/database/type/oracle/src/test/java/org/apache/shardingsphere/infra/database/oracle/OracleDataSourceMetaDataTest.java
index 08d5cde0cdf..dd52be5c9b6 100644
---
a/infra/database/type/oracle/src/test/java/org/apache/shardingsphere/infra/database/oracle/OracleDataSourceMetaDataTest.java
+++
b/infra/database/type/oracle/src/test/java/org/apache/shardingsphere/infra/database/oracle/OracleDataSourceMetaDataTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.database.oracle;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
diff --git
a/infra/database/type/postgresql/src/main/java/org/apache/shardingsphere/infra/database/postgresql/PostgreSQLConnectionPropertiesParser.java
b/infra/database/type/postgresql/src/main/java/org/apache/shardingsphere/infra/database/postgresql/PostgreSQLConnectionPropertiesParser.java
index abe9c413d6b..4434de8d9f2 100644
---
a/infra/database/type/postgresql/src/main/java/org/apache/shardingsphere/infra/database/postgresql/PostgreSQLConnectionPropertiesParser.java
+++
b/infra/database/type/postgresql/src/main/java/org/apache/shardingsphere/infra/database/postgresql/PostgreSQLConnectionPropertiesParser.java
@@ -19,9 +19,9 @@ package org.apache.shardingsphere.infra.database.postgresql;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrl;
+import org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrl;
import
org.apache.shardingsphere.infra.database.core.connector.StandardConnectionProperties;
-import
org.apache.shardingsphere.infra.database.core.connector.StandardJdbcUrlParser;
+import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
import java.util.Properties;
diff --git
a/infra/database/type/postgresql/src/test/java/org/apache/shardingsphere/infra/database/postgresql/PostgreSQLDataSourceMetaDataTest.java
b/infra/database/type/postgresql/src/test/java/org/apache/shardingsphere/infra/database/postgresql/PostgreSQLDataSourceMetaDataTest.java
index 3e8c4786e43..4fdc895599c 100644
---
a/infra/database/type/postgresql/src/test/java/org/apache/shardingsphere/infra/database/postgresql/PostgreSQLDataSourceMetaDataTest.java
+++
b/infra/database/type/postgresql/src/test/java/org/apache/shardingsphere/infra/database/postgresql/PostgreSQLDataSourceMetaDataTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.database.postgresql;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
diff --git
a/infra/database/type/sql92/src/main/java/org/apache/shardingsphere/infra/database/sql92/SQL92ConnectionPropertiesParser.java
b/infra/database/type/sql92/src/main/java/org/apache/shardingsphere/infra/database/sql92/SQL92ConnectionPropertiesParser.java
index 30c1db2f56a..8eb32848889 100644
---
a/infra/database/type/sql92/src/main/java/org/apache/shardingsphere/infra/database/sql92/SQL92ConnectionPropertiesParser.java
+++
b/infra/database/type/sql92/src/main/java/org/apache/shardingsphere/infra/database/sql92/SQL92ConnectionPropertiesParser.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.infra.database.sql92;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
import
org.apache.shardingsphere.infra.database.core.connector.StandardConnectionProperties;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.util.exception.ShardingSpherePreconditions;
import java.util.regex.Matcher;
diff --git
a/infra/database/type/sql92/src/test/java/org/apache/shardingsphere/infra/database/sql92/SQL92DataSourceMetaDataTest.java
b/infra/database/type/sql92/src/test/java/org/apache/shardingsphere/infra/database/sql92/SQL92DataSourceMetaDataTest.java
index b9376ecff01..0229f172d63 100644
---
a/infra/database/type/sql92/src/test/java/org/apache/shardingsphere/infra/database/sql92/SQL92DataSourceMetaDataTest.java
+++
b/infra/database/type/sql92/src/test/java/org/apache/shardingsphere/infra/database/sql92/SQL92DataSourceMetaDataTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.database.sql92;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
diff --git
a/infra/database/type/sqlserver/src/main/java/org/apache/shardingsphere/infra/database/sqlserver/SQLServerConnectionPropertiesParser.java
b/infra/database/type/sqlserver/src/main/java/org/apache/shardingsphere/infra/database/sqlserver/SQLServerConnectionPropertiesParser.java
index 2f6c9f83f4d..fd9a99c2bd8 100644
---
a/infra/database/type/sqlserver/src/main/java/org/apache/shardingsphere/infra/database/sqlserver/SQLServerConnectionPropertiesParser.java
+++
b/infra/database/type/sqlserver/src/main/java/org/apache/shardingsphere/infra/database/sqlserver/SQLServerConnectionPropertiesParser.java
@@ -21,7 +21,7 @@ import com.google.common.base.Strings;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
import
org.apache.shardingsphere.infra.database.core.connector.StandardConnectionProperties;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.util.exception.ShardingSpherePreconditions;
import java.util.regex.Matcher;
diff --git
a/infra/database/type/sqlserver/src/test/java/org/apache/shardingsphere/infra/database/sqlserver/SQLServerDataSourceMetaDataTest.java
b/infra/database/type/sqlserver/src/test/java/org/apache/shardingsphere/infra/database/sqlserver/SQLServerDataSourceMetaDataTest.java
index 1713403618e..48219b7a295 100644
---
a/infra/database/type/sqlserver/src/test/java/org/apache/shardingsphere/infra/database/sqlserver/SQLServerDataSourceMetaDataTest.java
+++
b/infra/database/type/sqlserver/src/test/java/org/apache/shardingsphere/infra/database/sqlserver/SQLServerDataSourceMetaDataTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.database.sqlserver;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionPropertiesParser;
-import
org.apache.shardingsphere.infra.database.core.connector.UnrecognizedDatabaseURLException;
+import
org.apache.shardingsphere.infra.database.core.connector.url.UnrecognizedDatabaseURLException;
import
org.apache.shardingsphere.infra.database.core.connector.ConnectionProperties;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
diff --git
a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/datasource/config/impl/ShardingSpherePipelineDataSourceConfiguration.java
b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/datasource/config/impl/ShardingSpherePipelineDataSourceConfiguration.java
index 95b0386c1dd..796900fd0f0 100644
---
a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/datasource/config/impl/ShardingSpherePipelineDataSourceConfiguration.java
+++
b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/datasource/config/impl/ShardingSpherePipelineDataSourceConfiguration.java
@@ -23,8 +23,8 @@ import lombok.Getter;
import lombok.Setter;
import
org.apache.shardingsphere.data.pipeline.api.datasource.config.PipelineDataSourceConfiguration;
import
org.apache.shardingsphere.data.pipeline.spi.datasource.JdbcQueryPropertiesExtension;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrlAppender;
-import
org.apache.shardingsphere.infra.database.core.connector.StandardJdbcUrlParser;
+import
org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrlAppender;
+import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
diff --git
a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/datasource/config/impl/StandardPipelineDataSourceConfiguration.java
b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/datasource/config/impl/StandardPipelineDataSourceConfiguration.java
index b84e04c0366..a4b9dc207a6 100644
---
a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/datasource/config/impl/StandardPipelineDataSourceConfiguration.java
+++
b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/datasource/config/impl/StandardPipelineDataSourceConfiguration.java
@@ -22,8 +22,8 @@ import lombok.Getter;
import
org.apache.shardingsphere.data.pipeline.api.datasource.config.PipelineDataSourceConfiguration;
import
org.apache.shardingsphere.data.pipeline.api.datasource.config.yaml.YamlJdbcConfiguration;
import
org.apache.shardingsphere.data.pipeline.spi.datasource.JdbcQueryPropertiesExtension;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrlAppender;
-import
org.apache.shardingsphere.infra.database.core.connector.StandardJdbcUrlParser;
+import
org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrlAppender;
+import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeFactory;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.datasource.props.DataSourceProperties;
diff --git
a/kernel/data-pipeline/dialect/opengauss/src/main/java/org/apache/shardingsphere/data/pipeline/opengauss/ingest/wal/OpenGaussLogicalReplication.java
b/kernel/data-pipeline/dialect/opengauss/src/main/java/org/apache/shardingsphere/data/pipeline/opengauss/ingest/wal/OpenGaussLogicalReplication.java
index a7b294f48aa..cd8e0906b69 100644
---
a/kernel/data-pipeline/dialect/opengauss/src/main/java/org/apache/shardingsphere/data/pipeline/opengauss/ingest/wal/OpenGaussLogicalReplication.java
+++
b/kernel/data-pipeline/dialect/opengauss/src/main/java/org/apache/shardingsphere/data/pipeline/opengauss/ingest/wal/OpenGaussLogicalReplication.java
@@ -21,8 +21,8 @@ import lombok.extern.slf4j.Slf4j;
import
org.apache.shardingsphere.data.pipeline.api.datasource.config.impl.StandardPipelineDataSourceConfiguration;
import
org.apache.shardingsphere.data.pipeline.api.datasource.config.yaml.YamlJdbcConfiguration;
import
org.apache.shardingsphere.data.pipeline.postgresql.ingest.wal.decode.BaseLogSequenceNumber;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrl;
-import
org.apache.shardingsphere.infra.database.core.connector.StandardJdbcUrlParser;
+import org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrl;
+import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
import org.opengauss.PGProperty;
diff --git
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rdl/storage/unit/AlterStorageUnitBackendHandler.java
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rdl/storage/unit/AlterStorageUnitBackendHandler.java
index 8448f2bab55..fb38ab4a6e0 100644
---
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rdl/storage/unit/AlterStorageUnitBackendHandler.java
+++
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/rdl/storage/unit/AlterStorageUnitBackendHandler.java
@@ -27,8 +27,8 @@ import
org.apache.shardingsphere.distsql.parser.segment.HostnameAndPortBasedData
import
org.apache.shardingsphere.distsql.parser.segment.URLBasedDataSourceSegment;
import
org.apache.shardingsphere.distsql.parser.segment.converter.DataSourceSegmentsConverter;
import
org.apache.shardingsphere.distsql.parser.statement.rdl.alter.AlterStorageUnitStatement;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrl;
-import
org.apache.shardingsphere.infra.database.core.connector.StandardJdbcUrlParser;
+import org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrl;
+import
org.apache.shardingsphere.infra.database.core.connector.url.StandardJdbcUrlParser;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.datasource.props.DataSourceProperties;
import
org.apache.shardingsphere.infra.datasource.props.DataSourcePropertiesCreator;
diff --git
a/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/cases/PipelineContainerComposer.java
b/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/cases/PipelineContainerComposer.java
index 945fa018d81..2c05e49d709 100644
---
a/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/cases/PipelineContainerComposer.java
+++
b/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/cases/PipelineContainerComposer.java
@@ -26,7 +26,7 @@ import
org.apache.shardingsphere.data.pipeline.cdc.api.job.type.CDCJobType;
import
org.apache.shardingsphere.data.pipeline.common.datasource.PipelineDataSourceFactory;
import org.apache.shardingsphere.data.pipeline.common.job.JobStatus;
import org.apache.shardingsphere.data.pipeline.common.job.type.JobType;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrlAppender;
+import
org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrlAppender;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.database.mysql.MySQLDatabaseType;
import
org.apache.shardingsphere.infra.database.opengauss.OpenGaussDatabaseType;
diff --git
a/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/framework/container/compose/NativeContainerComposer.java
b/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/framework/container/compose/NativeContainerComposer.java
index 40419b06d4d..08c75d24e06 100644
---
a/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/framework/container/compose/NativeContainerComposer.java
+++
b/test/e2e/operation/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/framework/container/compose/NativeContainerComposer.java
@@ -18,7 +18,7 @@
package
org.apache.shardingsphere.test.e2e.data.pipeline.framework.container.compose;
import lombok.SneakyThrows;
-import org.apache.shardingsphere.infra.database.core.connector.JdbcUrlAppender;
+import
org.apache.shardingsphere.infra.database.core.connector.url.JdbcUrlAppender;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import
org.apache.shardingsphere.test.e2e.data.pipeline.env.PipelineE2EEnvironment;
import org.apache.shardingsphere.test.e2e.env.runtime.DataSourceEnvironment;