Nó thực sự là một hạt khó bẻ gãy.
Sau rất nhiều nghiên cứu và thực sự gỡ lỗi spring-boot, spring, hibernate, tomcat pool, v.v. để hoàn thành.
Tôi nghĩ rằng nó sẽ tiết kiệm rất nhiều thời gian cho những người cố gắng đạt được loại yêu cầu này.
Dưới đây là các cài đặt cần thiết để đạt được yêu cầu sau
- Các ứng dụng khởi động mùa xuân sẽ bắt đầu tốt ngay cả khi DB không hoạt động hoặc không có DB.
- Các ứng dụng sẽ nhanh chóng nhận các kết nối khi DB xuất hiện, có nghĩa là không cần phải khởi động lại máy chủ web hoặc triển khai lại các ứng dụng.
- Không cần khởi động tomcat hoặc triển khai lại các ứng dụng, nếu DB chuyển từ trạng thái đang chạy và xuất hiện lại.
application.yml:
spring:
datasource:
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/schema
username: root
password: root
continueOnError: true
initialize: false
initialSize: 0
timeBetweenEvictionRunsMillis: 5000
minEvictableIdleTimeMillis: 5000
minIdle: 0
jpa:
show-sql: true
hibernate:
ddl-auto: none
naming_strategy: org.hibernate.cfg.DefaultNamingStrategy
properties:
hibernate:
dialect: org.hibernate.dialect.MySQL5Dialect
hbm2ddl:
auto: none
temp:
use_jdbc_metadata_defaults: false