Ho quanto segue in un fagiolo primaverile:
@Value("${myValue}")
private String value;
Il valore viene iniettato correttamente. Tuttavia, la variabile deve essere facoltativa, viene passata come parametro della riga di comando (che viene quindi aggiunto al contesto Spring utilizzando un SimpleCommandLinePropertySource ) e questo argomento non esisterà sempre.
Ho provato entrambi i seguenti per fornire un valore predefinito:
@Value("${myValue:}")
@Value("${myValue:DEFAULT}")
ma in ogni caso, l'argomento predefinito dopo i due punti viene inserito anche quando c'è un valore effettivo: questo sembra sovrascrivere ciò che Spring dovrebbe iniettare.
Qual è il modo corretto per specificare che @Value non è richiesto?
Grazie
@Value("${some.prop:}")
funziona per me. Questa è l'unica annotazione su quella variabile.