spring boot在启动的时候只会检查你是否配置了数据库连接, 而不会检测配置的是否正确
这样会出现的问题是: 只有在你使用数据库的时候才知道配置出错, 我们希望是在程序启动的时候就进行检查, 如果数据库连接配置的有问题, 直接终止程序启动
可以通过以下的方式处理: 在包扫描路径下添加该类
1 @Component 2 public class ApplicationContextHelper implements ApplicationContextAware { 3 4 private static ApplicationContext context; 5 6 @Override 7 public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { 8 try { 9 context = applicationContext; 10 // ===== 在项目初始化bean后检验数据库连接是否 11 DataSource dataSource = (DataSource) context.getBean("dataSource"); 12 dataSource.getConnection().close(); 13 } catch (Exception e) { 14 e.printStackTrace(); 15 // ===== 当检测数据库连接失败时, 停止项目启动 16 System.exit(-1); 17 } 18 } 19 20 public ApplicationContext getApplicationContext() { 21 return context; 22 } 23 24 }