Rumah > Java > javaTutorial > teks badan

Bagaimana untuk membaca konfigurasi yaml dalam java

下次还敢
Lepaskan: 2024-03-28 17:27:40
asal
480 orang telah melayarinya

Bagaimana untuk membaca konfigurasi YAML dalam Java? Pustaka pihak ketiga: SnakeYAML: kaya dengan fungsi dan menyokong penghurai tersuai. Jackson-YAML: Sebahagian daripada perpustakaan Jackson, khusus untuk penghuraian YAML. Pustaka Standard Java: Kelas Yaml (Java 9 dan lebih baru): Menyediakan fungsi penghuraian YAML asas.

Bagaimana untuk membaca konfigurasi yaml dalam java

Cara membaca konfigurasi YAML menggunakan Java

YAML (YAML Ain't Markup Language) ialah bahasa penanda ringan yang digunakan secara meluas untuk fail konfigurasi dan format data. Di Java, kami boleh menggunakan perpustakaan pihak ketiga atau perpustakaan standard Java untuk menghuraikan dan membaca fail konfigurasi YAML.

Pustaka pihak ketiga:

  • SnakeYAML: Penghurai YAML yang kaya dengan ciri yang menyokong berbilang struktur data dan penghurai tersuai.
  • Jackson-YAML: Sebahagian daripada perpustakaan Jackson, khusus untuk menghuraikan kandungan YAML.
  • YCSB: Alat penanda aras yang popular dengan keupayaan untuk membaca dan menulis konfigurasi YAML.

Java Standard Library:

Sokongan YAML telah diperkenalkan dalam Java 9 dan ke atas, membenarkan penggunaan java.util 中的 Yaml kelas untuk menghuraikan kandungan YAML.

menggunakan perpustakaan pihak ketiga:

snakeyaml:

<code class="java">import org.yaml.snakeyaml.Yaml;
import org.yaml.snakeyaml.constructor.Constructor;

public class ReadYamlWithSnakeYAML {

    public static void main(String[] args) {
        String yamlConfig = "..."; // YAML 配置文件的内容

        // 构建 SnakeYAML 解析器,指定要解析的数据类型
        Constructor constructor = new Constructor(Config.class);
        Yaml yaml = new Yaml(constructor);

        // 解析 YAML 配置,返回指定类型的对象
        Config config = yaml.loadAs(yamlConfig, Config.class);

        // 使用解析后的配置对象
        System.out.println(config.getName());
    }
}</code>
Salin selepas log masuk
e

jackson-yaml:

<code class="java">import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;

public class ReadYamlWithJacksonYAML {

    public static void main(String[] args) {
        String yamlConfig = "..."; // YAML 配置文件的内容

        // 构建 ObjectMapper,指定 YAML 工厂
        ObjectMapper mapper = new ObjectMapper(new YAMLFactory());

        // 解析 YAML 配置,返回指定类型的对象
        Config config = mapper.readValue(yamlConfig, Config.class);

        // 使用解析后的配置对象
        System.out.println(config.getName());
    }
}</code>
Salin selepas log masuk
e

java standard perpustakaan:

<code class="java">import java.io.IOException;
import java.util.Yaml;

public class ReadYamlWithJavaStandardLibrary {

    public static void main(String[] args) throws IOException {
        String yamlConfig = "..."; // YAML 配置文件的内容

        // 解析 YAML 配置,返回一个 Map
        Map<String, Object> configMap = Yaml.load(yamlConfig);

        // 从 Map 中获取特定配置值
        String name = (String) configMap.get("name");

        // 使用解析后的配置值
        System.out.println(name);
    }
}</code>
Salin selepas log masuk
e

exam

🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜. fail dan nilai konfigurasi Akses. Setiap kaedah mempunyai kelebihan dan kekurangan dan boleh dipilih berdasarkan keperluan tertentu. 🎜

Atas ialah kandungan terperinci Bagaimana untuk membaca konfigurasi yaml dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!