Yaml Là Gì

1. YAML file là gì?

YAML (YAML Ain’t Markup Language) là 1 trong những lại ngữ điệu tựa như JSON có phong cách thiết kế cùng với mục đích nhằm người cùng thứ cùng phát âm được.

Ví dụ:

message: Hellomenus: - title: trang chủ name: Home path: / - title: Login name: Login path: /loginYAML file thường xuyên được dùng để triển khai các file cấu hình (config), lưu lại giá chỉ trị… Nhìn phổ biến mục tiêu của tệp tin YAML tương tự cùng với file .properties

2. File YAML vào Spring Boot.

Trong Spring Boot tệp tin YAML (.yml) được dùng để triển khai tệp tin config (tương đươn cùng với tệp tin .properties).

Ta hoàn toàn có thể sử dụng tệp tin YAML hoặc tệp tin Properties hoặc kết hợp cả hai. (Xem lại: Đọc file .properties với Spring Boot)

Việc hiểu tệp tin YAML trong Spring Boot như thể cùng với vấn đề phát âm tệp tin Properties. Chúng ta cũng áp dụng những annotation

Bạn đang xem: Yaml là gì

Value, 
ConfigurationProperties

lấy ví dụ như phát âm tệp tin YAML:

*

File yaml:

package giaidap.info.springboothello.bean;import java.util.ArrayList;import java.util.List;import javax.validation.constraints.NotEmpty;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.stereotype.Component;import org.springframework.validation.annotation.Validated;
Component
ConfigurationProperties
Validatedpublic class GlobalConfig

Xem thêm: Là Gì? Nghĩa Của Từ Compact Là Gì ? (Từ Điển Anh Compact Là Gì, Nghĩa

NotEmpty private String name; private String website; private String facebook; private List menus = new ArrayList(); // getter - setterpackage giaidap.info.springboothello.bean;public class Menu private String name; private String path; private String title;
Override public String toString() return "Menu" + "name="" + name + """ + ", path="" + path + """ + ", title="" + title + """ + ""; // getter - setterFile Controller:

package giaidap.info.springboothello.controller;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.website.bind.annotation.RequestMapping;import giaidap.info.springboothello.bean.GlobalConfig;
Controllerpublic class BaseController
Autowired private GlobalConfig globalConfig;
Value("$message") private String message;
RequestMapping("/") public String index(Model model) Model.addAttribute("name", globalConfig.getName()); mã sản phẩm.addAttribute("website", globalConfig.getWebsite()); Model.addAttribute("facebook", globalConfig.getFacebook()); mã sản phẩm.addAttribute("message", message); model.addAttribute("menus", globalConfig.getMenus()); return "index"; File view: