Bagaimana untuk menyelesaikan masalah menggunakan @Value dalam springBoot
Masalah yang timbul daripada menggunakan @Value untuk mendapatkan nilai
Dalam projek springBoot, kami biasanya menulis beberapa laluan atau sumber dalam fail konfigurasi untuk memudahkan pengurusan.
Tetapi mungkin terdapat beberapa masalah semasa mendapatkannya.
file.uploadFolder=E://upload/
1 Secara umumnya tentukan medan
dan gunakan @Value("$ {Name} ") boleh mendapatkan nilai
@Value("${file.uploadFolder}") private String uploadFolder;
2. Tetapi biasanya kita akan menggunakannya dalam kelas alat
tetapi medan diubah suai secara statik untuk menjadi pembolehubah statik. Menggunakan kaedah ini Jika nilai tidak dapat diperoleh, apa yang kita dapat adalah batal.
Jadi kita perlu menukar cara untuk mendapatkan nilai, seperti yang ditunjukkan di bawah. Ingat untuk tidak menggunakan statik dalam kaedah yang ditetapkan! ! !
private static String uploadFolder; public static String getUploadFolder() { return uploadFolder; } @Value("${file.uploadFolder}") public void setUploadFolder(String uploadFolder) { Base64Utils.uploadFolder = uploadFolder; }
3 Sebaiknya tambahkan @Komponen atau anotasi lain
pada kelas alat untuk membiarkannya diuruskan oleh musim bunga.
Ingat oolong yang berlaku apabila springBoot menggunakan @Value
Lihat kod dahulu
server.port=8007 #mysql配置 url=jdbc:mysql://localhost:3306/lzy_zyg?useUnicode=true&characterEncoding=UTF-8 username=root password=root
Ini ialah maklumat konfigurasi berkaitan yang diisi dalam application.properties, di mana mysql konfigurasi digunakan sebagai maklumat konfigurasi luaran digunakan.
Kemudian gunakannya di mana perlu seperti berikut
@Configuration public class JfinalDb { @Value("${url}") private String dbUrl; @Value("${username}") private String dbUName; @Value("${password}") private String dbPwd; ... }
Masalah yang sangat pelik berlaku apabila menggunakannya, iaitu nama pengguna dan kata laluan tetapan penamaan adalah betul, dan sambungan setempat juga betul , tetapi selalu Ia adalah ralat bahawa pengesahan sambungan gagal, dan nama pengguna bukan akar.
Akhirnya saya mencetak dbUName dan mendapati bahawa bukan root sama sekali, tetapi nama hos saya!
Jadi di sini, ingatlah untuk tidak menyesuaikan nama pengguna nama dalam fail application.properties, kerana anda tidak akan mendapat hasil yang anda inginkan.
Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah menggunakan @Value dalam springBoot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

Dreamweaver Mac版
Alat pembangunan web visual