Terkadang, kita perlu membaca file konfigurasi properti secara langsung dalam kode pegas, jadi bagaimana kita melakukannya? Mari kita lihat konten spesifik di bawah ini.
Kita semua tahu bahwa musim semi dapat membaca nilai -nilai di properti di @Value, cukup konfigurasikannya di file konfigurasi
org.springframework.beans.factory.config.propertyplaceHolderConfigurer
<bean id = "PropertyConfigurer"> <Property Name = "Location"> <value> classpath: config.properties </ value> </prop Property> </bean>
Kemudian ketika Anda perlu menggunakan ini untuk mendapatkan nilai median properti, Anda dapat menggunakannya seperti ini
@Value ("$ {sql.name}") Private String sqlname;Tapi ada masalah dengan ini. Setiap kali saya menggunakan nilai dalam file konfigurasi, saya harus mendeklarasikan variabel lokal. Apakah ada cara untuk secara langsung membaca nilai -nilai dalam file konfigurasi menggunakan kode?
Jawabannya adalah menulis ulang propertiPlaceHolderConfigurer
Public Class PropertyplaceHolder memperluas PropertyplaceHolderConfigurer {private static Map <String, String> Propertimap; @Override protected void ProcessProperties (configurableListableBeanFactory beanfactorytoprocess, Properties Props) melempar beansException {super.processproperties (beanfactorytoprocess, alat peraga); propertimap = hashmap baru <string, string> (); untuk (tombol objek: props.keyset ()) {string keystr = key.toString (); Nilai string = props.getProperty (keyStr); propertymap.put (tombol, nilai); }} // Metode statis untuk mengakses properti konteks objek statis publik getProperty (nama string) {return propertimap.get (name); }}Di file konfigurasi, gunakan kelas di atas alih -alih propertiPlaceHolderConfigurer
<bean id = "PropertyConfigurer"> <Property Name = "Location"> <value> classpath: config.properties </ value> </prop Property> </bean>
Dengan cara ini, dapat diperoleh secara langsung dalam kode dengan pemrograman
PropertyplaceHolder.getProperty ("sql.name");Jika itu adalah beberapa file konfigurasi, konfigurasikan atribut lokasi
<bean id = "PropertyConfigurer"> <name properti = "ignoreresourcenotfound" value = "true"/> <name properti = "lokasi"> <cist> <value> File: ./ jdbc.properties </value> <value> file: ./ module.config.properties </values value> classpath: classpath: j.path. <value> classpath*:*. config.properties </ value> </list> </propert> </tean>
Meringkaskan
Di atas adalah semua tentang kode Spring untuk membaca instance file parsing properties. Saya harap ini akan membantu semua orang. Teman yang tertarik dapat terus merujuk ke situs ini:
Analisis Proses Kacang Instantiasi Musim Semi dan Contoh Kode Lengkap
Kode Pembuatan Metode Pabrik Musim Semi (Instenderza) Kode Instance Kacang
Jika ada kekurangan, silakan tinggalkan pesan untuk menunjukkannya. Terima kasih teman atas dukungan Anda untuk situs ini!