代码拉取完成,页面将自动刷新
经研究是sharejdbc 启动要加载数据库表元数据导致启动时间比较长;
解决办法:
可以将sharejdbc 移除,数据源注入直接用 durid,参考代码
DataSourceConfig.java
@Value("${spring.datasource.url}")
private String dbUrl;
@Value("${spring.datasource.username}")
private String username;
@Value("${spring.datasource.password}")
private String password;
@Value("${spring.datasource.driver-class-name}")
private String driverClassName;
@Value("${spring.datasource.druid.initial-size}")
private int initialSize;
@Value("${spring.datasource.druid.min-idle}")
private int minIdle;
@Value("${spring.datasource.druid.max-active}")
private int maxActive;
@Value("${spring.datasource.druid.max-wait}")
private int maxWait;
/**
* 构建dataSource
* 这里没有使用ShardingDataSourceFactory
* 因为要为durid数据源配置监听Filter
*
* @return 数据源对象
* @throws SQLException sql异常
* @throws IOException IO 异常
* @since 1.8
*/
@Bean
public DataSource dataSource() throws SQLException, IOException {
DruidDataSource dataSource = new DruidDataSource();
dataSource.setUrl(dbUrl);
dataSource.setUsername(username);
dataSource.setPassword(password);
dataSource.setDriverClassName(driverClassName);
//配置初始化大小、最小、最大
dataSource.setInitialSize(initialSize);
dataSource.setMinIdle(minIdle);
dataSource.setMaxActive(maxActive);
//配置获取连接等待超时的时间
dataSource.setMaxWait(maxWait);
// 配置Druid的SQL监控和日志打印
dataSource.setLogAbandoned(true);
dataSource.setRemoveAbandoned(true);
dataSource.setRemoveAbandonedTimeout(180);
dataSource.setFilters("stat,log4j2"); // 配置Log4j2作为日志实现
return dataSource;
}
application-dev.yml 中加入数据库配置
datasource:
url: jdbc:mysql://dev.db.java110.com:3306/TT?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
username: TT
password: hc12345678
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
druid:
initial-size: 5
max-active: 10
min-idle: 5
max-wait: 60000