Для каждого dataSource
запустите что-то вроде:
new JdbcTemplate(dataSource).queryForInt("SELECT 1").
Ваш dataSource
может быть настроен для проверки соединения перед его возвратом, поэтому в некоторых случаях он даже не достигает запроса, когда база данных не работает. Чтобы сделать код простым, оберните этот код вокруг всех ваших контроллеров.
Более чистым, но немного менее гибким решением является использование некоторого настраиваемого преобразователя исключений, который будет перехватывать исключения из базы данных (Spring предоставляет хороший уровень абстракции исключений JDBC) и перенаправлять соответствующим образом.