многие из тех же свойств получают как список Экземпляров - PullRequest
0 голосов
/ 16 апреля 2019

Как подготовить свойства в application.properties, чтобы на стороне javas получалось как List

server.ip=192.168.0.0
server.login=login1
server.password=password1

server.ip=192.168.0.1
server.login=login2
server.password=password2

Изначально свойства были в формате xml, но их нужно заменить на .properties

<servers>
    <server>
        <url>https://192.168.0.0</url>
        <username>login1</username>
        <password>password1</password>
    </server>
    <server>
        <url>https://192.168.0.1</url>
        <username>login2</username>
        <password>password2</password>
    /server>    
</servers>

Ответы [ 2 ]

0 голосов
/ 16 апреля 2019

Пожалуйста, обратитесь это

вы должны поддерживать правильно сформированный XML-файл, как показано ниже.

 <server>
        <ip>192.168.0.0</ip>
 </server>
0 голосов
/ 16 апреля 2019

Ниже приведен пример создания файла .properties из файла XML.Этот код может использоваться для чтения значений ключей свойств из файла XML, который будет использоваться в коде приложения.

package xyz.demo;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.InvalidPropertiesFormatException;
import java.util.Properties;

public class XMLToProperties
{
    public static void main(String[] args) throws InvalidPropertiesFormatException, IOException
    {
        String outPropertiesFile = "application.properties";
        String inXmlFile = "applicationProperties.xml";

        InputStream inStream = new FileInputStream(inXmlFile);          //Input XML File
        OutputStream outStream = new FileOutputStream(outPropertiesFile);   //Output properties File

        Properties props = new Properties();

        //Load XML file
        props.loadFromXML(inStream);

        //Store to properties file
        props.store(outStream, "Converted from applicationProperties.xml");

        //Use properties in code
        System.out.println(props.get("input.dir"));         //Prints 'c:/temp/input'
    }
}

applicationProperties.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
    <comment>application.properties</comment>
    <entry key="input.dir">c:/temp/input</entry>
    <entry key="spring.batch.job.enabled">false</entry>
    <entry key="spring.main.banner-mode">off</entry>
</properties>

application.properties

#Converted from applicationProperties.xml
#Mon Jul 23 18:15:00 IST 2018

spring.batch.job.enabled=false
input.dir=c\:/temp/input
spring.main.banner-mode=off

Подробнее здесь: https://howtodoinjava.com/xml/convert-xml-to-properties/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...