1
mirror of https://github.com/CarmJos/EasyConfiguration.git synced 2024-09-19 20:25:51 +00:00
EasyConfiguration/impl/sql/README.md

2.5 KiB

EasyConfiguration-SQL

SQL database implementation, support for MySQL or MariaDB.

Table schema

CREATE TABLE IF NOT EXISTS conf
(
`namespace`       VARCHAR(32)     NOT NULL,                           # 命名空间 (代表其属于谁,类似于单个配置文件地址的概念)
`path`            VARCHAR(96)     NOT NULL,                           # 配置路径 (ConfigPath)
`type`            TINYINT UNSIGNED NOT NULL DEFAULT 0,                 # 数据类型 (Integer/Byte/List/Map/...)
`value`           MEDIUMTEXT,                                          # 配置项的值 (可能为JSON格式)
`inline_comments` TEXT,                                                # 行内注释
`header_comments` MEDIUMTEXT,                                          # 顶部注释
`create_time`     DATETIME         NOT NULL DEFAULT CURRENT_TIMESTAMP, # 创建时间
`update_time`     DATETIME         NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`namespace`, `path`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4;

Dependencies

Maven Dependency


<project>
    <repositories>

        <repository>
            <!-- Using Maven Central Repository for secure and stable updates, though synchronization might be needed. -->
            <id>maven</id>
            <name>Maven Central</name>
            <url>https://repo1.maven.org/maven2</url>
        </repository>

        <repository>
            <!-- Using GitHub dependencies for real-time updates, configuration required (recommended). -->
            <id>EasyConfiguration</id>
            <name>GitHub Packages</name>
            <url>https://maven.pkg.github.com/CarmJos/EasyConfiguration</url>
        </repository>

    </repositories>
</project>

<project>
    <dependencies>
        <dependency>
            <groupId>cc.carm.lib</groupId>
            <artifactId>easyconfiguration-sql</artifactId>
            <version>[LATEST RELEASE]</version>
            <scope>compile</scope>
        </dependency>
    </dependencies>
</project>

Gradle Dependency

repositories {

    // Using Maven Central Repository for secure and stable updates, though synchronization might be needed.
    mavenCentral()

    // Using GitHub dependencies for real-time updates, configuration required (recommended).
    maven { url 'https://maven.pkg.github.com/CarmJos/EasyConfiguration' }

}
dependencies {
    api "cc.carm.lib:easyconfiguration-sql:[LATEST RELEASE]"
}