Rumah > Java > javaTutorial > teks badan

Analisis prinsip konfigurasi Springboot-yaml dan konfigurasi automatik

王林
Lepaskan: 2023-05-13 15:25:06
ke hadapan
1077 orang telah melayarinya

Pusat Timbang Tara Versi

Kebergantungan musim bunga membantu kami bergantung pada banyak pakej balang yang biasa digunakan untuk mengimport pakej balang ini tidak memerlukan nombor versi
Contohnya:

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
</dependency>
Salin selepas log masuk

Prinsip konfigurasi automatik<. . kelas menunjukkan bahawa ini ialah permulaan utama springboot>
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(
    excludeFilters = {@Filter(
    type = FilterType.CUSTOM,
    classes = {TypeExcludeFilter.class}
), @Filter(
    type = FilterType.CUSTOM,
    classes = {AutoConfigurationExcludeFilter.class}
)}
)
public @interface SpringBootApplication {
Salin selepas log masuk

@EnableAutoConfiguration: Dayakan konfigurasi automatik, jadi kami tidak perlu melakukan banyak konfigurasi secara manual. AutoConfigurationPackage

akan menjadi kelas konfigurasi utama Semua komponen di bawah pakej akan diimbas ke dalam bekas spring

@AutoConfigurationPackage
@Import({AutoConfigurationImportSelector.class})
public @interface EnableAutoConfiguration {
Salin selepas log masuk

AutoConfigurationImportSelector mengimport komponen ke dalam bekas melalui @import:, komponen ini akan memuatkan semua. kelas konfigurasi automatik, seperti mysql, web, dll. Tunggu

Kami akhirnya akan pergi ke META-INF/spring.factories untuk mencari semua kelas konfigurasi automatik dan memuatkannya ke dalam bekas Kelas konfigurasi automatik ini akan menghapuskan banyak daripada konfigurasi yang biasa kami lakukan dengan spring.

sintaks yaml

Tersurat



Rentetan tidak perlu dipetik secara lalai, petikan tunggal dan petikan berganda mempunyai ciri khas tujuan

Petikan tunggal ialah Escape istimewa, seperti n keluaran atau n

aksara khas petikan berganda tidak akan terlepas, jika n output ialah ruang

tanpa menambah petikan tunggal, ia akan terlepas

longgar Mengikat

ditulis dalam huruf unta, yang sama seperti menambah garis bawah - atau garis bawah _ Apabila ditukar kepada kelas entiti, kesemuanya adalah huruf unta. Walau bagaimanapun, ini hanya boleh digunakan dalam configurationProperties, bukan dalam @Value Gunakan anotasi

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@Import({Registrar.class})
public @interface AutoConfigurationPackage {
Salin selepas log masuk
dalam anotasi untuk membenarkan konfigurasi tersuai dalam konfigurasi yaml mempunyai gesaan

digunakan bersama-sama dengan anotasi @PropertySource

@PropertySource anotasi boleh memuatkan fail lain yang ditentukan

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>
Salin selepas log masuk
digunakan bersama-sama dengan @ImportResource

untuk mengimport fail konfigurasi spring dan membuat ia berkuat kuasa

@PropertySource(value = "classpath:user.properties")
Salin selepas log masuk

Pemegang tempat fail konfigurasi

${random.int} menggunakan nombor rawak yang disediakan oleh yaml

${server.port} menggunakan nilai yang dikonfigurasikan sebelum ini

${server.name: Hello} Jika tiada nilai, gunakan nilai lalai

profil

Pengaktifan menentukan persekitaran konfigurasi yang berbeza



Pengaktifan baris arahan boleh menambah –spring.profiles.active=dev

Pengaktifan parameter mesin maya-Dspring .profiles.active=dev

Memuatkan jujukan fail konfigurasi

fail: Direktori ./config/ config di bawah laluan akar projek
fail: ./ direktori akar projek

classpath: config/
classpath: /

Semua fail akan dimuatkan, dengan keutamaan dari atas ke bawah, dari tinggi ke rendah, dengan konfigurasi yang lebih tinggi akan menggantikan konfigurasi yang berbeza dan saling melengkapi
Anda juga boleh menukar lokasi fail konfigurasi melalui –spring.config.location semasa menggunakan fail konfigurasi projek ini adalah pelengkap kepada fail konfigurasi yang dinyatakan di sini.

Atas ialah kandungan terperinci Analisis prinsip konfigurasi Springboot-yaml dan konfigurasi automatik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan