Trabalhando com configuração em YAML e Java Properties
O que este conversor faz
YAML e os arquivos .properties do Java são duas maneiras de escrever a mesma configuração. Os arquivos properties guardam um par chave=valor plano por linha e usam pontos para sugerir a hierarquia (server.servlet.context-path=/api). O YAML expressa essa mesma hierarquia por meio de indentação e aninhamento reais. Esta ferramenta lê qualquer um dos formatos, descobre qual você colou e o reescreve no outro: expandindo as chaves com pontos em uma árvore aninhada ou achatando uma árvore de volta em caminhos com pontos.
Como a conversão é bidirecional e se baseia na estrutura detectada em vez de um modelo fixo, um arquivo pode fazer o ciclo completo (YAML → Properties → YAML) com as mesmas chaves e valores. Para que as listas continuem listas, escolha Indexado ([0]) em Formato de Array: com o estilo padrão, separado por vírgulas, uma lista volta como um único valor de texto e as linhas # vão parar no topo.
Quando usar
O caso mais comum é um projeto Spring Boot migrando entre application.properties e application.yml. As equipes costumam começar com properties e mudam para YAML quando a configuração fica profunda o suficiente para que as chaves com pontos se tornem difíceis de ler. Ir no sentido contrário é igualmente útil quando uma ferramenta ou um pipeline de implantação espera properties planas.
Também é prático para comparar rapidamente duas configurações, converter um trecho da documentação para o formato que seu projeto realmente usa, ou normalizar a indentação e o estilo de arrays antes de fazer o commit.
Exemplo: um bloco de servidor
As linhas de properties server.port=8080 e server.servlet.context-path=/api tornam-se um bloco YAML aninhado em que server contém port: 8080 e uma chave servlet que guarda context-path: /api. Converta de volta e as chaves com pontos reaparecem exatamente iguais. Números como 8080 permanecem sem aspas para manter seu tipo inteiro em vez de virarem strings.
Notas de formato e casos extremos
Com Preservar Comentários ativado (o padrão), as linhas que começam com # são movidas para o topo do resultado; um comentário no fim de uma linha não é mantido, e um comentário não fica junto da chave que descrevia. De YAML para Properties, uma lista vira um único valor separado por vírgulas (tools=a,b) ou linhas indexadas (tools[0]=a, tools[1]=b); de Properties para YAML, as linhas indexadas viram uma lista YAML com hifens. A indentação ajustável e as aspas em strings (auto, sempre, nunca) permitem seguir o guia de estilo da sua equipe. A detecção automática de tipos evita que booleanos, inteiros e valores null sejam envolvidos em aspas.