Heim >Java >javaLernprogramm >So lösen Sie das Problem der Verwendung von @Value in springBoot
Im SpringBoot-Projekt schreiben wir normalerweise einige Pfade oder Ressourcen in die Konfigurationsdatei, um die Verwaltung zu erleichtern.
Beim Erhalt kann es jedoch zu Problemen kommen.
file.uploadFolder=E://upload/
Verwenden Sie oben @Value("${name}"), um den Wert zu erhalten
@Value("${file.uploadFolder}") private String uploadFolder;
Aber das Feld wird durch Static geändert, um eine statische Variable zu werden. Mit dieser Methode können wir den Wert nicht erhalten, und was wir erhalten, ist null.
Also müssen wir die Art und Weise ändern, wie wir den Wert ermitteln, wie unten gezeigt. Denken Sie daran, in der Set-Methode kein statisches Attribut zu verwenden! ! !
private static String uploadFolder; public static String getUploadFolder() { return uploadFolder; } @Value("${file.uploadFolder}") public void setUploadFolder(String uploadFolder) { Base64Utils.uploadFolder = uploadFolder; }
, damit sie bis zum Frühjahr verwaltet werden kann.
Dann verwenden Sie es bei Bedarf wie folgt
server.port=8007 #mysql配置 url=jdbc:mysql://localhost:3306/lzy_zyg?useUnicode=true&characterEncoding=UTF-8 username=root password=root
Schließlich habe ich dbUName ausgedruckt und festgestellt, dass
es überhaupt nicht root war, sondern mein Hostname!Denken Sie hier also daran, den Namen Benutzername in der Datei application.properties nicht anzupassen, da Sie sonst nicht die gewünschten Ergebnisse erhalten.
Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem der Verwendung von @Value in springBoot. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!