Perbezaan antara springboot dan springmvc
spring boot telah membenamkan bekas tomcat, Jetty dan Undertow, yang boleh dijalankan secara langsung tanpa sebarang penggunaan lanjut
spring boot Konfigurasi secara automatik, mengurangkan sejumlah besar konfigurasi fail xml; mengurangkan kerumitan pembinaan projek
Spring MVC ialah rangka kerja MVC berdasarkan Servlet, kerana konfigurasi Spring adalah sangat kompleks, pelbagai XML, JavaConfig dan hin agak menyusahkan untuk dikendalikan. Oleh itu, untuk memudahkan penggunaan pembangun, Spring boot telah dilancarkan secara kreatif daripada konfigurasi, yang memudahkan proses konfigurasi spring.
Spring ialah "enjin";
Spring MVC ialah rangka kerja MVC berdasarkan Spring
Spring Boot ialah satu set pakej penyepaduan pembangunan pantas berdasarkan pendaftaran bersyarat Spring4; .
Dua cara penggunaan springboot hot
SpringBoot devtools hot deployment hanya tersedia selepas SpringBoot 1.3
①: spring-boot-devtools ②: SpringBoot Dimuatkan
Kaedah 1:
Tambah kebergantungan dalam fail pom projek:
<!--热部署jar--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency>
Kemudian: gunakan shift+ctrl+alt+"/" (kunci pintasan dalam IDEA) Pilih " Registry" dan kemudian semak compiler.automake.allow.when.app.running
Kaedah 2:
Tambah kod berikut pada projek
<build> <plugins> <plugin> <!-- springBoot编译插件--> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <dependencies> <!-- spring热部署 --> <!-- 该依赖在此处下载不下来,可以放置在build标签外部下载完成后再粘贴进plugin中 --> <dependency> <groupId>org.springframework</groupId> <artifactId>springloaded</artifactId> <version>1.2.6.RELEASE</version> </dependency> </dependencies> </plugin> </plugins> </build>
Diperlukan selepas menambah Gunakan Perintah mvn untuk dijalankan:
Mula-mula cari konfigurasi Edit dalam IDEA, dan kemudian lakukan perkara berikut: (Klik "+" di sudut kiri atas, kemudian pilih maven, panel kanan akan muncul, masukkan merah kawasan bergaris bawah seperti yang ditunjukkan Perintah yang ditunjukkan, anda boleh menamakan arahan (dinamakan di sini sebagai MvnSpringBootRun))
Klik simpan dan ia akan muncul dalam bahagian projek berjalan IDEA Klik anak panah hijau untuk menjalankan
fail konfigurasi springboot
spring boot menggunakan fail konfigurasi global: terutamanya dua jenis
aplikasi.properties: Contoh: server.port =9998
aplikasi.yml(YAML): Contoh: pelayan:
Port:8080
Fungsi fail konfigurasi adalah terutamanya untuk mengubah suai lalai asas bagi Konfigurasi but spring
anotasi teras But Spring
Anotasi pada kelas permulaan ialah @SpringBootApplication, yang juga merupakan anotasi teras Spring Boot. Gabungan utama termasuk 3 anotasi berikut:
@SpringBootConfiguration: menggabungkan anotasi @Configuration untuk melaksanakan fungsi fail konfigurasi.
@EnableAutoConfiguration: Hidupkan fungsi konfigurasi automatik, atau matikan pilihan konfigurasi automatik tertentu, seperti mematikan fungsi konfigurasi automatik sumber data: @SpringBootApplication(exclude = { DataSourceAutoConfiguration.class }).
@ComponentScan: Imbasan komponen spring.
Prinsip pelaksanaan pemula but spring
Menggunakan pemula untuk merealisasikan konfigurasi automatik hanya memerlukan dua syarat - kebergantungan maven dan fail konfigurasi pemula pengenalan melaksanakan proses konfigurasi automatik.
Memperkenalkan maven pada asasnya mengimport pakej jar Apabila spring-boot bermula, ia akan mencari fail sumber/META-INF/spring.factories dalam pakej balang pemula Menurut konfigurasi dalam fail spring.factories akan menemui kelas yang perlu dikonfigurasikan secara automatik
Perbezaan antara Spring Boot dan Spring MVC
Spring Boot ialah penyepaduan bagi. Spring dan Spring MVC, manakala Spring MVC hanyalah modul Spring , rangka kerja lapisan Web yang ringan
Spring Boot boleh mencapai konfigurasi hampir sifar, semua fungsi dibangunkan menggunakan anotasi dan idea 'konvensyen atas konfigurasi' digunakan untuk memudahkan pembangunan projek
Kesukaran, dan Spring MVC perlu bergantung pada konfigurasi xml untuk pembangunan
Spring Boot dilengkapi dengan tomcat terbina dalam, jadi selepas membungkus ke dalam pakej balang Anda boleh menjalankannya terus, atau anda boleh memilih untuk menggunakan Tomcat luaran
Spring Boot juga mewarisi banyak ketiga- konfigurasi perpustakaan pihak, seperti JDBC, Mongo, Redis, dll. Menggunakan perpustakaan pihak ketiga ini, konfigurasi hampir Zero adalah mungkin
Apakah prinsip pendaftaran perkhidmatan springcloud dan penemuan
Eureka mengandungi dua komponen: Eureka Server dan Eureka Client
Eureka Server menyediakan perkhidmatan pendaftaran perkhidmatan
Selepas setiap nod dimulakan, ia akan didaftarkan dalam EurekaServer, supaya pendaftaran perkhidmatan dalam EurekaServer akan menyimpan semua maklumat nod perkhidmatan yang tersedia, maklumat nod perkhidmatan boleh dilihat secara intuitif dalam antara muka
EurekaClient ialah klien Java yang digunakan untuk memudahkan interaksi dengan Eureka Pelayan. Pelanggan juga mempunyai algoritma beban pengimbang beban bulat Robin terbina dalam. Selepas permohonan bermula, degupan jantung akan dihantar ke Pelayan Eureka (tempoh lalai ialah 30 saat). Jika Pelayan Eureka tidak menerima degupan jantung nod dalam berbilang kitaran degupan jantung, EurekaServer akan mengalih keluar nod perkhidmatan daripada pendaftaran perkhidmatan (90 saat secara lalai)
Tiga peranan utama Eureka :
Pelayan Eureka menyediakan pendaftaran dan penemuan perkhidmatan
Pembekal Perkhidmatan Pembekal perkhidmatan mendaftarkan perkhidmatannya sendiri dengan Eureka, supaya pengguna perkhidmatan boleh Cari
Pengguna Perkhidmatan Pengguna perkhidmatan mendapatkan senarai perkhidmatan berdaftar daripada Eureka supaya ia boleh menggunakan perkhidmatan
Sebagai pusat pendaftaran perkhidmatan, kelebihan Eureka dan Zookeeper ialah:
Teori CAP yang terkenal menunjukkan bahawa sistem teragih tidak boleh pada masa yang sama memenuhi C (konsistensi), A (Ketersediaan) dan P (Toleransi Partition). Oleh kerana toleransi kerosakan partition P mesti dijamin dalam sistem teragih, kami hanya boleh membuat pertukaran antara A dan C.
Oleh itu
Zookeeper menjamin CP,
Eureka menjamin AP
Perbezaan antara # dan $ dalam mybatis
# adalah bersamaan dengan menambah petikan berganda pada data, $ bersamaan dengan memaparkan data secara terus
Data yang masuk akan dianggap sebagai rentetan dan disertakan dalam petikan berganda. Contohnya: perintah mengikut #user_id#, jika nilai yang dihantar adalah 111, maka nilai apabila dihuraikan ke dalam sql adalah tertib mengikut "111". 🎜>
ORDER BY ${columnName}
Cara Redis menghentikan data
Mekanisme LRU:
Mekanisme TTL:
Struktur set data redis menyimpan jadual tamat tempoh pasangan nilai kunci, iaitu redisDb.expires.Atas ialah kandungan terperinci Apakah dua kaedah penggunaan panas springboot?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!