public interface AppConfig {
@Config("database.url")
String getDatabaseUrl();
@Config("database.username")
String getDatabaseUsername();
@Config("database.password")
String getDatabasePassword();
@Config("email.server")
String getEmailServer();
@Config("email.username")
String getEmailUsername();
@Config("email.password")
String getEmailPassword();
}
properties
database.url=jdbc:mysql://localhost:3306/mydb
database.username=root
database.password=123456
email.server=smtp.gmail.com
email.username=example@gmail.com
email.password=secret
ConfigMagicFactory factory = new ConfigMagicFactory();
AppConfig config = factory.load(AppConfig.class, "app-config.properties");
public class DatabaseConnection {
public void connect(String url, String username, String password) {
}
}
DatabaseConnection connection = new DatabaseConnection();
connection.connect(config.getDatabaseUrl(), config.getDatabaseUsername(), config.getDatabasePassword());