sunrisefromdark commented on code in PR #9012:
URL: https://github.com/apache/inlong/pull/9012#discussion_r1352311020
##########
inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/resource/sink/mysql/MySQLJdbcUtils.java:
##########
@@ -52,26 +52,48 @@ public class MySQLJdbcUtils {
* @throws Exception on get connection error
*/
public static Connection getConnection(String url, String user, String
password) throws Exception {
- if (StringUtils.isBlank(url) || !url.startsWith(MYSQL_JDBC_PREFIX)) {
- throw new Exception("MySQL JDBC URL was invalid, it should start
with jdbc:mysql");
- }
+ ValidationUtils.extractHostAndValidatePortFromJdbcUrl(url,
MYSQL_JDBC_PREFIX);
+ Connection conn = establishDatabaseConnection(url, user, password);
+ validateConnection(conn, url);
+ return conn;
+ }
+ /**
+ * Establishes a database connection using the provided URL, username, and
password.
+ *
+ * @param url The JDBC URL
+ * @param user The username
+ * @param password The user's password
+ * @return A {@link Connection} object representing the database connection
+ * @throws Exception If an error occurs while obtaining the connection
+ */
+ private static Connection establishDatabaseConnection(String url, String
user, String password) throws Exception {
Connection conn;
try {
Class.forName(MYSQL_DRIVER_CLASS);
conn = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
- String errorMsg = "get MySQL connection error, please check MySQL
JDBC url, username or password!";
+ String errorMsg = "Failed to get MySQL connection, please check
MySQL JDBC URL, username, or password!";
LOGGER.error(errorMsg, e);
- throw new Exception(errorMsg + " other error msg: " +
e.getMessage());
- }
- if (Objects.isNull(conn)) {
- throw new Exception("get MySQL connection failed, please contact
administrator.");
+ throw new Exception(errorMsg + " Other error message: " +
e.getMessage());
}
- LOGGER.info("get MySQL connection success for url={}", url);
return conn;
}
+ /**
+ * Validates if the database connection was successfully obtained.
+ *
+ * @param conn The database connection
+ * @param url The JDBC URL
+ * @throws Exception If the connection is null
+ */
+ private static void validateConnection(Connection conn, String url) throws
Exception {
Review Comment:
This redundant function has been removed
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]