diff --git a/druid-spring-boot-example/druid-spring-boot-mybatis-example/pom.xml b/druid-spring-boot-example/druid-spring-boot-mybatis-example/pom.xml
index 8a9d4a5..9c33ce1 100644
--- a/druid-spring-boot-example/druid-spring-boot-mybatis-example/pom.xml
+++ b/druid-spring-boot-example/druid-spring-boot-mybatis-example/pom.xml
@@ -23,10 +23,6 @@
-
- org.springframework.boot
- spring-boot-properties-migrator
-
org.springframework.boot
spring-boot-starter-aop
diff --git a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/java/com/github/trang/druid/example/mybatis/DruidMybatisApplication.java b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/java/com/github/trang/druid/example/mybatis/DruidMybatisApplication.java
index bc9a7cc..e64e70a 100644
--- a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/java/com/github/trang/druid/example/mybatis/DruidMybatisApplication.java
+++ b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/java/com/github/trang/druid/example/mybatis/DruidMybatisApplication.java
@@ -1,6 +1,10 @@
package com.github.trang.druid.example.mybatis;
+import com.github.trang.druid.example.mybatis.mapper.CityMapper;
+import com.google.gson.Gson;
+import lombok.extern.slf4j.Slf4j;
import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -12,6 +16,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
*/
@SpringBootApplication
@MapperScan("com.github.trang.druid.example.mapper")
+@Slf4j
public class DruidMybatisApplication implements CommandLineRunner {
public static void main(String[] args) {
@@ -19,9 +24,15 @@ public class DruidMybatisApplication implements CommandLineRunner {
SpringApplication.run(DruidMybatisApplication.class, args);
}
+ @Autowired
+ private CityMapper cityRepository;
+
@Override
public void run(String... args) {
-
+ Gson gson = new Gson();
+ cityRepository.findAll().stream()
+ .map(gson::toJson)
+ .forEach(log::info);
}
}
\ No newline at end of file
diff --git a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/java/com/github/trang/druid/example/mybatis/config/DynamicDataSource.java b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/java/com/github/trang/druid/example/mybatis/config/DynamicDataSource.java
index bfa061d..734ec14 100644
--- a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/java/com/github/trang/druid/example/mybatis/config/DynamicDataSource.java
+++ b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/java/com/github/trang/druid/example/mybatis/config/DynamicDataSource.java
@@ -1,6 +1,7 @@
package com.github.trang.druid.example.mybatis.config;
import lombok.Getter;
+import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
@@ -18,15 +19,12 @@ import java.util.concurrent.atomic.AtomicInteger;
*/
@Slf4j
@Getter
+@RequiredArgsConstructor
public class DynamicDataSource extends AbstractRoutingDataSource {
private final AtomicInteger count = new AtomicInteger();
private final Map targetDataSources;
- public DynamicDataSource(Map targetDataSources) {
- this.targetDataSources = targetDataSources;
- }
-
/**
* 基于轮询算法指定实际的数据源
*
diff --git a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/resources/application.yml b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/resources/application.yml
index 93dc969..7c34437 100644
--- a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/resources/application.yml
+++ b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/resources/application.yml
@@ -27,6 +27,7 @@ spring:
password: 123456
schema: classpath:import.sql
druid:
+ max-wait: 30000
query-timeout: 10
validation-query: SELECT 1
use-global-data-source-stat: true
diff --git a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/BaseTest.java b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/BaseTest.java
index 55edfa6..0897c83 100644
--- a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/BaseTest.java
+++ b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/BaseTest.java
@@ -2,7 +2,10 @@ package com.github.trang.druid.example.mybatis.test.coveralls;
import com.github.trang.druid.example.mybatis.DruidMybatisApplication;
import com.github.trang.druid.example.mybatis.mapper.CityMapper;
+import com.google.gson.Gson;
import org.junit.runner.RunWith;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@@ -16,6 +19,9 @@ import org.springframework.test.context.junit4.SpringRunner;
@SpringBootTest(classes = DruidMybatisApplication.class)
public abstract class BaseTest {
+ protected static final Logger log = LoggerFactory.getLogger(BaseTest.class.getSimpleName());
+ protected Gson gson = new Gson();
+
@Autowired(required = false)
protected CityMapper cityMapper;
diff --git a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/DynamicDataSourceTests.java b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/DynamicDataSourceTests.java
index 379aead..63be24c 100644
--- a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/DynamicDataSourceTests.java
+++ b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/DynamicDataSourceTests.java
@@ -32,8 +32,8 @@ public class DynamicDataSourceTests extends BaseTest {
@Test
public void testMasterDataSource() {
- assertEquals(1, masterDataSource.getInitialSize());
- assertEquals(1, masterDataSource.getMinIdle());
+ assertEquals(0, masterDataSource.getInitialSize());
+ assertEquals(0, masterDataSource.getMinIdle());
assertEquals(50, masterDataSource.getMaxActive());
assertEquals(30000, masterDataSource.getMaxWait());
assertEquals(60000, masterDataSource.getTimeBetweenEvictionRunsMillis());
@@ -49,8 +49,8 @@ public class DynamicDataSourceTests extends BaseTest {
@Test
public void testSlaveDataSource() {
- assertEquals(1, slaveDataSource.getInitialSize());
- assertEquals(1, slaveDataSource.getMinIdle());
+ assertEquals(0, slaveDataSource.getInitialSize());
+ assertEquals(0, slaveDataSource.getMinIdle());
assertEquals(25, slaveDataSource.getMaxActive());
assertEquals(30000, slaveDataSource.getMaxWait());
assertEquals(60000, slaveDataSource.getTimeBetweenEvictionRunsMillis());
diff --git a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/MyBatisTests.java b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/MyBatisTests.java
index cbfa192..435b404 100644
--- a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/MyBatisTests.java
+++ b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/MyBatisTests.java
@@ -5,6 +5,7 @@ import org.junit.Assert;
import org.junit.Test;
import java.util.List;
+import java.util.Optional;
/**
* MyBatis 测试
@@ -15,14 +16,16 @@ public class MyBatisTests extends BaseTest {
@Test
public void testOne() {
- City city = cityMapper.findById(1L);
- System.out.println(city);
+ Optional.ofNullable(cityMapper.findById(1L))
+ .ifPresent(gson::toJson);
}
@Test
public void testAll() {
List cities = cityMapper.findAll();
- System.out.println(cities);
+ cities.stream()
+ .map(gson::toJson)
+ .forEach(log::info);
Assert.assertEquals(5, cities.size());
}
diff --git a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/SingleDataSourceTests.java b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/SingleDataSourceTests.java
index f449733..94bb331 100644
--- a/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/SingleDataSourceTests.java
+++ b/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/test/java/com/github/trang/druid/example/mybatis/test/coveralls/SingleDataSourceTests.java
@@ -20,9 +20,9 @@ public class SingleDataSourceTests extends BaseTest {
@Test
public void testSingleDataSource() {
- assertEquals(1, dataSource.getInitialSize());
- assertEquals(1, dataSource.getMinIdle());
- assertEquals(10, dataSource.getMaxActive());
+ assertEquals(0, dataSource.getInitialSize());
+ assertEquals(0, dataSource.getMinIdle());
+ assertEquals(8, dataSource.getMaxActive());
assertEquals(30000, dataSource.getMaxWait());
assertEquals(60000, dataSource.getTimeBetweenEvictionRunsMillis());
assertEquals(1800000, dataSource.getMinEvictableIdleTimeMillis());
@@ -31,7 +31,7 @@ public class SingleDataSourceTests extends BaseTest {
assertEquals(true, dataSource.isTestWhileIdle());
assertEquals(false, dataSource.isTestOnBorrow());
assertEquals(false, dataSource.isTestOnReturn());
- assertEquals(20, dataSource.getMaxPoolPreparedStatementPerConnectionSize());
+ assertEquals(10, dataSource.getMaxPoolPreparedStatementPerConnectionSize());
assertEquals(true, dataSource.isUseGlobalDataSourceStat());
}