springBoot プロジェクトでは、通常、管理を容易にするために構成ファイルにパスまたはリソースを書き込みます。
ただし、入手時に問題が発生する可能性があります。
file.uploadFolder=E://upload/
use @Value("$ {name}" ) 値
@Value("${file.uploadFolder}") private String uploadFolder;
ただし、フィールドは static によって変更され、静的変数になります。値を取得できない場合は、このメソッドを使用します。取得した場合、取得したものは null です。
そこで、値の取得方法を変更する必要があります。値は次のように取得できます。 set メソッドでは static を使用しないように注意してください。 ! !
private static String uploadFolder; public static String getUploadFolder() { return uploadFolder; } @Value("${file.uploadFolder}") public void setUploadFolder(String uploadFolder) { Base64Utils.uploadFolder = uploadFolder; }
を追加することをお勧めします。
server.port=8007 #mysql配置 url=jdbc:mysql://localhost:3306/lzy_zyg?useUnicode=true&characterEncoding=UTF-8 username=root password=root
これは、application.properties に入力された関連する設定情報です。構成は外部構成情報として使用されます。
@Configuration public class JfinalDb { @Value("${url}") private String dbUrl; @Value("${username}") private String dbUName; @Value("${password}") private String dbPwd; ... }
これを使用すると、非常に奇妙な問題が発生します。つまり、名前付け設定のユーザー名とパスワードは正しく、ローカル接続も正しいです。 , しかし常に 接続認証に失敗し、ユーザー名がrootではないというエラーです。
最後に dbUName を出力したところ、 は root ではなく、私のホスト名であることがわかりました。
したがって、ここでは、application.properties ファイル内の名前 username をカスタマイズしないように注意してください。期待する結果が得られないためです。
以上がspringBoot で @Value を使用する場合の問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。