package com.gs.simple.common; import lombok.RequiredArgsConstructor; import org.springframework.core.env.ConfigurableEnvironment; import org.springframework.core.env.Environment; import org.springframework.core.env.MapPropertySource; import org.springframework.stereotype.Component; import java.util.Map; @Component @RequiredArgsConstructor public class DatabaseConfig { private final Environment env; public void updateDatabaseConfig(String newUrl, String newUsername, String newPassword) { // 使用Environment对象来动态修改属性 ((ConfigurableEnvironment) env).getPropertySources().addFirst(new MapPropertySource("dynamicProperties", Map.of("spring.datasource.url", newUrl, "spring.datasource.username", newUsername, "spring.datasource.password", newPassword))); } }