2017-11-18 1 views
2

Ich brauche meinen Web-Service, um mir die messages.properties zu liefern, die lokalisierte Texte im JSON-Format enthalten. Ich weiß, dass ich meinen eigenen Parser schreiben kann, aber wo sollte ich diese Logik in das Spring-Framework einfügen? Oder gibt es eine Spring-Infrastruktur, die das schon kann?Wie konvertiert man Eigenschaften in JSON Spring MVC?

Antwort

1

Sie können die Annotation @PropertySource Ihrer Klasse verwenden, um Ihre Eigenschaftendatei in den Speicher zu laden.

@Configuration 
class MessagesConfiguration { 

    @Bean(name = "messageProperties") 
    public static PropertiesFactoryBean mapper() { 
     PropertiesFactoryBean bean = new PropertiesFactoryBean(); 
     bean.setLocation(new ClassPathResource("messages.properties")); 
     return bean; 
    } 

    @Resource(name="messageProperties") 
    private Properties messages = new Properties(); 

    public Properties getMessages() { 
     return messages; 
    } 

} 

Properties.class ist nur ein Wrapper für Map<String, String> so können Sie es in JSON umwandeln.

+0

Wird Spring alle Eigenschaften der Eigenschaft messages hinzufügen? – Xegara

+0

Ja, es werden alle Eigenschaften in diese Property-Instanz injiziert. Eine Anmerkung: Sie müssen alle Eigenschaften mit Schlüssel 'Nachrichten' beginnen. Es wird –

+0

Ich habe versucht, aber es hat nichts in die Nachrichten-Eigenschaft injiziert. – Xegara