package config.source; import cc.carm.lib.configuration.core.ConfigurationRoot; import cc.carm.lib.configuration.core.annotation.ConfigPath; import cc.carm.lib.configuration.core.annotation.HeaderComment; import cc.carm.lib.configuration.core.value.ConfigValue; import cc.carm.lib.configuration.core.value.type.ConfiguredValue; @HeaderComment({"", "数据库配置", " 用于提供数据库连接,进行数据库操作。"}) public class DatabaseConfiguration extends ConfigurationRoot { @ConfigPath("driver") @HeaderComment({ "数据库驱动配置,请根据数据库类型设置。", "- MySQL: com.mysql.cj.jdbc.Driver", "- MariaDB(推荐): org.mariadb.jdbc.Driver", }) protected static final ConfigValue DRIVER_NAME = ConfiguredValue.of( String.class, "com.mysql.cj.jdbc.Driver" ); protected static final ConfigValue HOST = ConfiguredValue.of(String.class, "127.0.0.1"); protected static final ConfigValue PORT = ConfiguredValue.of(Integer.class, 3306); protected static final ConfigValue DATABASE = ConfiguredValue.of(String.class, "minecraft"); protected static final ConfigValue USERNAME = ConfiguredValue.of(String.class, "root"); protected static final ConfigValue PASSWORD = ConfiguredValue.of(String.class, "password"); protected static final ConfigValue EXTRA = ConfiguredValue.of(String.class, "?useSSL=false"); protected static String buildJDBC() { return String.format("jdbc:mysql://%s:%s/%s%s", HOST.get(), PORT.get(), DATABASE.get(), EXTRA.get()); } }