diff --git a/apollo-common/src/main/java/com/ctrip/framework/apollo/common/utils/DataSourceValidator.java b/apollo-common/src/main/java/com/ctrip/framework/apollo/common/utils/DataSourceValidator.java deleted file mode 100644 index ae1e4d1d7c0c52861397aa0c1d31af363f36df86..0000000000000000000000000000000000000000 --- a/apollo-common/src/main/java/com/ctrip/framework/apollo/common/utils/DataSourceValidator.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.ctrip.framework.apollo.common.utils; - -import org.apache.tomcat.jdbc.pool.Validator; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.sql.Connection; - -/** - * @author Jason Song(song_s@ctrip.com) - */ -public class DataSourceValidator implements Validator { - private static final Logger LOGGER = LoggerFactory.getLogger(DataSourceValidator.class); - private static final int DEFAULT_VALIDATE_TIMEOUT_IN_SECONDS = 5; - - @Override - public boolean validate(Connection connection, int validateAction) { - boolean isValid = false; - try { - isValid = connection.isValid(DEFAULT_VALIDATE_TIMEOUT_IN_SECONDS); - } catch (Throwable ex) { - LOGGER.warn("Data source validation error", ex); - } - - return isValid; - } -} diff --git a/apollo-common/src/main/resources/application.properties b/apollo-common/src/main/resources/application.properties index cd6bc8f3d2eca3d012a6939062889783d8bdd4ce..c6acc4facdd76fb6d72e6cb50180345c4f19f3fd 100644 --- a/apollo-common/src/main/resources/application.properties +++ b/apollo-common/src/main/resources/application.properties @@ -3,7 +3,7 @@ spring.http.converters.preferred-json-mapper=gson # DataSource spring.datasource.testWhileIdle=true spring.datasource.testOnBorrow=true -spring.datasource.validatorClassName=com.ctrip.framework.apollo.common.utils.DataSourceValidator +spring.datasource.validationQuery=SELECT 1 spring.datasource.validationInterval=5000 spring.datasource.initSQL=set names utf8mb4 diff --git a/apollo-common/src/test/java/com/ctrip/framework/apollo/common/AllTests.java b/apollo-common/src/test/java/com/ctrip/framework/apollo/common/AllTests.java index 09c636e24eee2104662fc27c1140f045e877dffc..fa0f20a1295602b33267ca7d45650adbd0e75aa9 100644 --- a/apollo-common/src/test/java/com/ctrip/framework/apollo/common/AllTests.java +++ b/apollo-common/src/test/java/com/ctrip/framework/apollo/common/AllTests.java @@ -1,6 +1,5 @@ package com.ctrip.framework.apollo.common; -import com.ctrip.framework.apollo.common.utils.DataSourceValidatorTest; import com.ctrip.framework.apollo.common.utils.InputValidatorTest; import org.junit.runner.RunWith; @@ -9,7 +8,7 @@ import org.junit.runners.Suite.SuiteClasses; @RunWith(Suite.class) @SuiteClasses({ - InputValidatorTest.class, DataSourceValidatorTest.class + InputValidatorTest.class }) public class AllTests { diff --git a/apollo-common/src/test/java/com/ctrip/framework/apollo/common/utils/DataSourceValidatorTest.java b/apollo-common/src/test/java/com/ctrip/framework/apollo/common/utils/DataSourceValidatorTest.java deleted file mode 100644 index 81272266ceae68417308c6b08753cf559f818095..0000000000000000000000000000000000000000 --- a/apollo-common/src/test/java/com/ctrip/framework/apollo/common/utils/DataSourceValidatorTest.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.ctrip.framework.apollo.common.utils; - -import org.junit.Before; -import org.junit.Test; - -import java.sql.Connection; - -import static org.junit.Assert.*; -import static org.mockito.Matchers.anyInt; -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.when; - -/** - * @author Jason Song(song_s@ctrip.com) - */ -public class DataSourceValidatorTest { - private DataSourceValidator datasourceValidator; - - @Before - public void setUp() throws Exception { - datasourceValidator = new DataSourceValidator(); - } - - @Test - public void testValidateSuccessfully() throws Exception { - Connection someConnection = mock(Connection.class); - int someValidationAction = 1; - - when(someConnection.isValid(anyInt())).thenReturn(true); - - assertTrue(datasourceValidator.validate(someConnection, someValidationAction)); - } - - @Test - public void testValidateFailed() throws Exception { - Connection someConnection = mock(Connection.class); - int someValidationAction = 1; - - when(someConnection.isValid(anyInt())).thenReturn(false); - - assertFalse(datasourceValidator.validate(someConnection, someValidationAction)); - } - - @Test - public void testValidateWithException() throws Exception { - Connection someConnection = mock(Connection.class); - int someValidationAction = 1; - - when(someConnection.isValid(anyInt())).thenThrow(new RuntimeException("error")); - - assertFalse(datasourceValidator.validate(someConnection, someValidationAction)); - } - -} \ No newline at end of file