<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.27</version>
</dependency>
yaml
app:
name: MyApp
version: 1.0.0
database:
url: jdbc:mysql://localhost:3306/mydb
username: root
password: password123
import org.yaml.snakeyaml.Yaml;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
public class ConfigLoader {
public static void main(String[] args) {
try {
Yaml yaml = new Yaml();
FileInputStream configFile = new FileInputStream("config.yaml");
Config config = yaml.loadAs(configFile, Config.class);
System.out.println("Application Name: " + config.getApp().getName());
System.out.println("Database URL: " + config.getDatabase().getUrl());
// ...
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
public class Config {
private App app;
private Database database;
public App getApp() {
return app;
}
public void setApp(App app) {
this.app = app;
}
public Database getDatabase() {
return database;
}
public void setDatabase(Database database) {
this.database = database;
}
}
public class App {
private String name;
private String version;
// getters and setters
}
public class Database {
private String url;
private String username;
private String password;
// getters and setters
}