2013-02-01 16 views
5

Wie kann man mit Federausdruck den Dateiinhalt lesen und in eine Zeichenkette einfügen?Federausdruck Inhalt der Datei lesen

Ich möchte Folgendes tun.

Zum Beispiel

@Value("classpath:myquery.sql") 
File f; 

@Value("#{org.apache.commons.io.FileUtils.readFileToString(f)}") 
String sql; 

Oder noch besser

@Value("#{FileUtils.readFileToString(classpath:myquery.sql)}") 
String sql; 

jedoch keine von oben Code Arbeit.

nur zu erwähnen, ich Frühjahr Version 3.2.0

Dank verwenden.

Antwort

17

bekam endlich die Antwort selbst ...

@Value("#{T(org.apache.commons.io.FileUtils).readFileToString(" + 
    "T(org.springframework.util.ResourceUtils).getFile('classpath:myquery.sql')" + 
    ")}") 
String sql; 

SQL nun den genauen Inhalt myquery.sql unter

+0

Leistungsstark !! Markiere deine Antwort als angenommen;) – Stephan

3

Es gibt eine ähnliche Frage here die Konfiguration verwenden Java beantwortet Classpath gefüllt ist voreingestellt.

@Configuration 
public class Spring { 

    @Value("classpath:choice-test.html") 
    private Resource sampleHtml; 

    @Bean 
    public String sampleHtmlData() { 
     try(InputStream is = sampleHtml.getInputStream()) { 
      return IOUtils.toString(is); 
     } 
    } 
} 
Verwandte Themen