Apakah soalan dan jawapan temu bual untuk SpringBoot?
1. Apakah Spring Boot?
Spring Boot ialah sub-projek di bawah organisasi sumber terbuka Spring Ia merupakan penyelesaian sehenti untuk komponen Spring Ia terutamanya memudahkan kesukaran menggunakan
Spring, menjimatkan konfigurasi berat dan menyediakan pelbagai permulaan. . supaya pembangun boleh bermula dengan cepat.
2. Mengapa menggunakan SpringBoot
Pembangunan pantas, penyepaduan pantas, konfigurasi dipermudahkan, bekas perkhidmatan terbenam
3 Perbezaan antara SpringBoot dan SpringCloud
SpringBoot Ia adalah rangka kerja Spring yang dibangunkan dengan pantas SpringCloud adalah rangka kerja mikro yang lengkap bergantung pada SpringBoot.
4. Apakah kelebihan Spring Boot?
Spring Boot terutamanya mempunyai kelebihan berikut: Ia mudah untuk dimulakan, meningkatkan kecekapan pembangunan dan menyediakan rangka kerja pembangunan yang lebih pantas dan ringkas untuk pembangunan Spring. Berfungsi di luar kotak, jauh dari konfigurasi yang menyusahkan. Ia menyediakan satu siri fungsi bukan perniagaan yang biasa untuk projek berskala besar, seperti pelayan terbenam, pengurusan keselamatan, pemantauan data pengendalian, pemeriksaan kesihatan dan konfigurasi luaran, dsb. Ringkasan SpringBoot adalah untuk menjadikan pengekodan lebih mudah, konfigurasi lebih mudah, penggunaan lebih mudah, pemantauan lebih mudah, dsb.
5. Apakah anotasi teras Spring Boot?
Apa anotasi yang terutamanya terdiri daripada anotasi? Anotasi pada kelas permulaan ialah @SpringBootApplication, yang juga merupakan anotasi teras Spring Boot Kombinasi utama termasuk tiga anotasi berikut: @SpringBootConfiguration: menggabungkan anotasi @Configuration untuk melaksanakan fungsi fail konfigurasi. @EnableAutoConfiguration: Hidupkan fungsi konfigurasi automatik atau matikan pilihan konfigurasi automatik, contohnya:
@ComponentScan: Pengimbasan komponen spring. java 如关闭数据源自动配置功能: @SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })。
6. Apakah rangka kerja pengelogan yang disokong Spring Boot? Apakah rangka kerja pengelogan yang disyorkan dan lalai?
Spring Boot menyokong Java Util Logging, Log4j2 dan Lockback sebagai rangka kerja pengelogan Jika anda menggunakan Starters untuk melancarkan
starter, Spring Boot akan menggunakan Logback sebagai rangka kerja pengelogan lalai, tetapi ia menyokong tidak kira apa. jenis rangka kerja pengelogan itu. Keluarkan fail konfigurasi ke konsol atau fail.
7. Cara SpringBoot Starter berfungsi
Saya secara peribadi faham bahawa SpringBoot terdiri daripada pelbagai Pemula. Kami juga boleh membangunkan Anotasi @SpringBootApplication secara automatik apabila springBoot bermula. Baca
fail spring.factories dalam setiap pemula Fail ini mengkonfigurasi semua kacang yang perlu dibuat dalam bekas spring dan melakukan konfigurasi automatik untuk menyuntikkacang ke dalam SpringContext // (SpringContext ialah Konfigurasi Spring. fail)
8. Apakah ciri baharu Spring Boot 2.X? Bagaimanakah ia berbeza dengan 1.X?
Perubahan konfigurasi Naik taraf versi JDK Naik taraf perpustakaan kelas pihak ketiga Pengaturcaraan Spring Responsif menyokong pengikatan atribut konfigurasi sokongan HTTP/2 Lebih banyak penambahbaikan dan peningkatan
9 >
thymeleaf, freemarker, jsp, JSP tidak disyorkan secara rasmi dan akan mempunyai sekatan10 Kelemahan SpringBootSaya rasa ia memalukan pada masa ini, saya rasa SpringBoot tidak mempunyai kekurangan. Apabila saya menemui satu, saya fikir ia adalah kerana saya tidak perlu mengkonfigurasinya sendiri, jadi sukar untuk mencari apabila ralat dilaporkan. 11. Apakah cara untuk menjalankan Spring Boot? Pakej dengan arahan atau masukkan ke dalam bekas untuk dijalankanGunakan pemalam Maven/Gradle untuk menjalankan
Laksanakan secara langsung kaedah utama untuk menjalankan
12 perlukan bekas bebas untuk dijalankan?
Import kebergantungan projek spring-boot-dependencies
14. Apakah cara untuk melaksanakan penggunaan panas dalam SpringBoot?
Terdapat dua cara utama:
Spring LoadedSpring-boot. -devtools
15 Penggunaan perkara SpringBoot
kaedah Perkhidmatan. .
16. Kaedah panggilan tak segerak Async
tak segerak bagi kaedah tersebut. Nota: Anda perlu menambah @EnableAsync pada kelas permulaan untuk membuat anotasi panggilan tak segerak @Async berkuat kuasa.
17. Bagaimana untuk menjalankan beberapa kod tertentu apabila Spring Boot bermula?
hanya menyediakan satu kaedah larian
18 Boot?
19. Apakah itu JavaConfig?
Spring JavaConfig ialah produk komuniti Spring Ia diperkenalkan pada Spring 3.0 Ia menyediakan
kaedah Java tulen untuk mengkonfigurasi bekas Spring IOC. Jadi ia membantu mengelakkan penggunaan konfigurasi XML. Kelebihan menggunakan JavaConfig ialah:
Konfigurasi berorientasikan objek. Oleh kerana konfigurasi ditakrifkan sebagai kelas dalam JavaConfig, pengguna boleh memanfaatkan sepenuhnya ciri berorientasikan objek dalam Java. Satu kelas konfigurasi boleh mewarisi yang lain, mengatasi kaedah @Beannya, dsb.
Kurangkan atau hapuskan konfigurasi XML. Faedah konfigurasi luaran berdasarkan prinsip suntikan kebergantungan telah terbukti. Walau bagaimanapun, ramai pembangun tidak mahu bertukar-tukar antara XML dan Java. JavaConfig menyediakan pembangun dengan cara Java tulen untuk mengkonfigurasi bekas Spring serupa dengan konsep konfigurasi XML. Dari perspektif teknikal, adalah mungkin untuk mengkonfigurasi bekas menggunakan hanya kelas konfigurasi JavaConfig, tetapi dalam praktiknya ramai orang percaya bahawa mencampurkan dan memadankan JavaConfig dengan XML adalah ideal.
Taip selamat dan mesra pemfaktoran semula. JavaConfig menyediakan cara selamat jenis untuk mengkonfigurasi bekas Spring. Terima kasih kepada sokongan Java
5.0 untuk generik, kacang kini boleh diambil mengikut jenis dan bukannya dengan nama, tanpa sebarang cast atau carian berasaskan rentetan.
Konfigurasi Java yang biasa digunakan:
@Configuration: Tulis anotasi ini pada kelas untuk menunjukkan bahawa kelas ini ialah kelas konfigurasi
@ComponentScan: Tambahkan anotasi @ComponentScan pada kelas konfigurasi. Secara lalai, anotasi ini akan mengimbas semua kelas konfigurasi di bawah pakej tempat kelas ini berada, yang bersamaan dengan
@Bean: suntikan kacang: bersamaan dengan < bean id="objectMapper" sebelumnya
class="org.codehaus.jackson.map.ObjectMapper" />
@EnableWebMvc: bersamaan dengan xml of< ;mvc:annotation-driven>
@ImportResource: Setara dengan xml< import resource="applicationContextcache.xml">
Terutamanya anotasi teras pada kelas permulaan Spring Boot, kelas konfigurasi utama anotasi SpringBootApplication Dengan kelas
konfigurasi utama ini akan mendayakan fungsi konfigurasi automatik anotasi @EnableAutoConfiguration untuk Spring Boot apabila ia dimulakan.
Dengan EnableAutoConfiguration ini, ia akan:
Memuatkan kelas autokonfigurasi yang boleh digunakan daripada fail konfigurasi META_INF/Spring.factories
Alih keluar pendua dan mengecualikan kelas yang dibawa oleh atribut exclude dan excludeName
Tapis , kembalikan kelas konfigurasi automatik yang memenuhi syarat (@Conditional)
1.fail sifat;
2.Fail YAML;
3. Parameter baris perintah; . Apakah itu YAML?
YAML ialah bahasa siri data yang boleh dibaca manusia. Ia biasanya digunakan dalam fail konfigurasi. Berbanding dengan fail sifat, fail YAML lebih berstruktur dan kurang mengelirukan jika kita ingin
menambah sifat kompleks dalam fail konfigurasi. Ia boleh dilihat bahawa YAML mempunyai
YAML kini boleh dianggap sebagai format fail konfigurasi yang sangat popular, sama ada ia adalah bahagian hadapan atau bahagian belakang, anda boleh melihat YAML konfigurasi
Tetapkan. Jadi apakah kelebihan konfigurasi YAML berbanding dengan konfigurasi sifat tradisional?
Mudah dan jelas, ia juga menyokong tatasusunan, elemen dalam tatasusunan boleh menjadi jenis data asas atau objek
Berbanding dengan Fail konfigurasi sifat, YAML mempunyai kelemahan lain, iaitu, ia tidak menyokong anotasi @PropertySource untuk mengimport konfigurasi YAML tersuai.
24. Bolehkah Spring Boot menggunakan konfigurasi XML?
Spring Boot mengesyorkan menggunakan konfigurasi Java dan bukannya konfigurasi XML, tetapi konfigurasi XML juga boleh digunakan dalam Spring Boot melalui @ImportResource Anotasi boleh memperkenalkan XML konfigurasi.
Dua fail konfigurasi pada teras but spring:
bootstrap (. yml atau . properties): boostrap dimuatkan oleh ApplicationContext induk dan dimuatkan sebelum aplikasi berkuat kuasa dalam fasa but konteks aplikasi . Secara umumnya, kami akan menggunakan fail ini dalam konfigurasi Spring Cloud. Dan sifat dalam boostrap tidak boleh ditindih;
.
26 Apakah itu Profil Musim Bunga?
Semasa pembangunan projek, sesetengah fail konfigurasi mungkin berbeza dalam persekitaran yang berbeza seperti pembangunan, ujian atau pengeluaran, seperti sambungan pangkalan data
sambungan, konfigurasi redis, dsb. Jadi bagaimana kita menukar konfigurasi secara automatik dalam persekitaran yang berbeza? Spring menyediakan kami dengan
mekanisme profil, yang memberikan kami fungsi menukar fail konfigurasi ke belakang dan sebagainya
Profil Musim Bunga membolehkan pengguna mendaftarkan kacang berdasarkan fail konfigurasi (dev, test, prod, dll.). Jadi apabila aplikasi
sedang berjalan dalam pembangunan, hanya kacang tertentu boleh dimuatkan, manakala dalam PENGELUARAN, kacang tertentu yang lain boleh dimuatkan.
Andaikan keperluan kami ialah dokumentasi Swagger hanya tersedia dalam persekitaran QA, dan semua dokumentasi lain dilumpuhkan. Ini boleh dilakukan menggunakan fail konfigurasi. Spring Boot menjadikan kerja dengan fail konfigurasi sangat mudah.
untuk membaca sifat dalam properties Konfigurasi, gunakan @MapperScan untuk mendaftar ke dalam pakej pemeta yang sepadan
Transaksi yang dikonfigurasikan dalam DataSourceConfig
Yang kedua ialah menggunakan jta-atomikos untuk melaksanakan pengurusan transaksi teragih
Gunakan Snyk untuk menyemak kebergantungan anda
Naik taraf kepada versi terkini
Dayakan perlindungan CSRF
Gunakan Dasar Keselamatan Kandungan untuk mengelakkan serangan XSS
konfigurasi keselamatan. Ia memerlukan kod yang sangat sedikit. Kelas konfigurasi perlu melanjutkan WebSecurityConfigurerAdapter dan mengatasi kaedahnya.
31 Bandingkan kelebihan dan kekurangan Spring Security dan Shiro?
Memandangkan Spring Boot secara rasminya menyediakan sejumlah besar starter yang sangat mudah di luar kotak, termasuk Spring Security
Starter membuat lebih mudah untuk menggunakan Spring Security dalam Spring Boot Anda hanya perlu menambah kebergantungan untuk melindungi semua antara muka Oleh itu, jika ia adalah projek Spring Boot, Spring Security biasanya dipilih. Sudah tentu, ini hanyalah gabungan yang dicadangkan Dari sudut teknikal semata-mata, tidak kira bagaimana anda menggabungkannya, tidak akan ada masalah. Berbanding dengan Spring Security
, Shiro terutamanya mempunyai ciri-ciri berikut:
Spring Security ialah rangka kerja pengurusan keselamatan kelas berat Shiro ialah rangka kerja pengurusan keselamatan yang ringan
Spring Security mempunyai konsep dan konfigurasi Rumit; dan konfigurasi mudah
Spring Security mempunyai fungsi yang berkuasa; Shiro mempunyai fungsi yang ringkas
32 Bagaimana untuk menyelesaikan masalah merentas domain dalam Spring Boot?
SSM tradisional, masalah merentas domain boleh diselesaikan melalui CORS Walau bagaimanapun, sebelum kami mengkonfigurasi CORS dalam fail XML,
kini kami boleh melaksanakan WebMvcConfigurer Antara muka kemudiannya. kaedah addCorsMappings untuk menyelesaikan isu merentas domain.@Configuration public class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOrigins("*") .allowCredentials(true) .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS") .maxAge(3600); } }
33 Apakah monitor dalam Spring Boot?
Penggerak but musim bunga ialah salah satu fungsi penting dalam rangka kerja permulaan musim bunga. Pemantau but spring membantu anda mengakses keadaan semasa aplikasi anda yang sedang berjalan dalam persekitaran pengeluaran anda. Terdapat beberapa metrik yang mesti disemak dan dipantau dalam persekitaran pengeluaran. Malah sesetengah aplikasi luaran mungkin menggunakan perkhidmatan ini untuk mencetuskan mesej amaran kepada orang yang berkaitan. Modul monitor mendedahkan satu set titik akhir REST yang boleh diakses terus
sebagai URL HTTP untuk menyemak status.
34. Bagaimana cara menggunakan Spring Boot untuk melaksanakan pengendalian pengecualian global?
Spring menyediakan cara yang sangat berguna untuk mengendalikan pengecualian menggunakan ControllerAdvice. Kami mengendalikan semua pengecualian yang dilemparkan oleh kelas pengawal dengan melaksanakan kelas
ControlerAdvice.
35. Bagaimanakah kita memantau semua perkhidmatan mikro Spring Boot?
Spring Boot menyediakan titik akhir monitor untuk memantau metrik bagi perkhidmatan mikro individu. Titik akhir ini berguna untuk mendapatkan maklumat
tentang aplikasi (seperti sama ada ia dimulakan) dan sama ada komponennya (seperti pangkalan data, dll.) berjalan dengan betul. Walau bagaimanapun, satu kelemahan atau kesukaran utama menggunakan monitor
perkhidmatan mikro yang melibatkan 50 aplikasi, pentadbir perlu menekan terminal pelaksanaan kesemua 50 aplikasi. Untuk membantu
kami menangani situasi ini, kami akan menggunakan projek sumber terbuka yang terletak di . Ia dibina di atas Spring Boot Actuator, yang menyediakan UI web yang membolehkan kami memvisualisasikan metrik untuk berbilang aplikasi.
36. SpringBoot性能如何优化
如果项目比较大,类比较多,不使用@SpringBootApplication,采用@Compoment指定扫包范
围
在项目启动时设置JVM初始内存和最大内存相同
将springboot内置服务器由tomcat设置为undertow
37. 如何重新加载 Spring Boot 上的更改,而无需重新启动服务器?Spring Boot项目如何热部署?
这可以使用 DEV 工具来实现。通过这种依赖关系,您可以节省任何更改,嵌入式tomcat 将重新启
动。Spring Boot 有一个开发工具(DevTools)模块,它有助于提高开发人员的生产力。Java 开
发人员面临的一个主要挑战是将文件更改自动部署到服务器并自动重启服务器。开发人员可以重新
加载 Spring Boot 上的更改,而无需重新启动服务器。这将消除每次手动部署更改的需要。Spring
Boot 在发布它的第一个版本时没有这个功能。这是开发人员最需要的功能。DevTools 模块完全满
足开发人员的需求。该模块将在生产环境中被禁用。它还提供 H2 数据库控制台以更好地测试应用
程序。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency>
38. SpringBoot微服务中如何实现 session 共享 ?
在微服务中,一个完整的项目被拆分成多个不相同的独立的服务,各个服务独立部署在不同的服务
器上,各自的 session 被从物理空间上隔离开了,但是经常,我们需要在不同微服务之间共享
session ,常见的方案就是 Spring Session + Redis 来实现 session 共享。将所有微服务的
session 统一保存在 Redis 上,当各个微服务对 session 有相关的读写操作时,都去操作 Redis 上
的 session 。这样就实现了 session 共享,Spring Session 基于 Spring 中的代理过滤器实现,使
得 session 的同步操作对开发人员而言是透明的,非常简便。
39. 您使用了哪些 starter maven 依赖项?
使用了下面的一些依赖项
spring-boot-starter-web 嵌入tomcat和web开发需要servlet与jsp支持
spring-boot-starter-data-jpa 数据库支持
spring-boot-starter-data-redis redis数据库支持
spring-boot-starter-data-solr solr支持
mybatis-spring-boot-starter 第三方的mybatis集成starter
自定义的starter(如果自己开发过就可以说出来)
40. Spring Boot 中的 starter 到底是什么 ?
首先,这个 Starter 并非什么新的技术点,基本上还是基于 Spring 已有功能来实现的。首先它提
供了一个自动化配置类,一般命名为 XXXAutoConfiguration ,在这个配置类中通过条件注解来
决定一个配置是否生效(条件注解就是 Spring 中原本就有的),然后它还会提供一系列的默认配
置,也允许开发者根据实际情况自定义相关配置,然后通过类型安全的属性(spring.factories)注入
将这些配置属性注入进来,新注入的属性会代替掉默认属性。正因为如此,很多第三方框架,我们
只需要引入依赖就可以直接使用了。当然,开发者也可以自定义 Starter
41. Spring Boot 中如何实现定时任务 ?
在 Spring Boot 中使用定时任务主要有两种不同的方式,一个就是使用 Spring 中的 @Scheduled
注解,另一-个则是使用第三方框架 Quartz。
使用 Spring 中的 @Scheduled 的方式主要通过 @Scheduled 注解来实现。
42. spring-boot-starter-parent 有什么用 ?
我们都知道,新创建一个 Spring Boot 项目,默认都是有 parent 的,这个 parent 就是 springboot-starter-parent ,spring-boot-starter-parent 主要有如下作用:
定义了 Java 编译版本为 1.8 。
使用 UTF-8 格式编码。
继承自 spring-boot-dependencies,这个里边定义了依赖的版本,也正是因为继承了这个依
赖,所以我们在写依赖时才不需要写版本号。
执行打包操作的配置。
自动化的资源过滤。
自动化的插件配置。
针对 application.properties 和 application.yml 的资源过滤,包括通过 profile 定义的不同
环境的配置文件,例如 application-dev.properties 和 application-dev.yml。
总结就是打包用的
43. SpringBoot如何实现打包
进入项目目录在控制台输入mvn clean package,clean是清空已存在的项目包,package进行打
包或者点击左边选项栏中的Mavne,先点击clean在点击package
44. Apakah perbezaan antara balang yang dibungkus oleh Spring Boot dan balang biasa?
Balang terakhir yang dibungkus oleh projek Spring Boot ialah balang boleh laku ini boleh dilalui secara langsung -jar xxx.jar Jalankan perintah
Balang jenis ini tidak boleh dipercayai oleh projek lain sebagai balang biasa Walaupun ia bergantung, kelas di dalamnya tidak boleh digunakan.
Balang Spring Boot tidak boleh dipercayai oleh projek lain, terutamanya kerana strukturnya berbeza daripada balang biasa. Untuk pakej balang biasa, selepas penyahmampatan
ialah nama pakej secara langsung, dan pakej ialah kod kami Selepas penyahmampatan, balang boleh laku yang dibungkus oleh Spring Boot ialah kod kami dalam direktori BOOTINFclasses, jadi ia tidak boleh dirujuk secara langsung. Jika anda mesti merujuknya, anda boleh menambah konfigurasi pada fail pom.xml dan membungkus projek Spring Boot ke dalam dua balang, satu boleh laku dan satu boleh dirujuk.
Atas ialah kandungan terperinci Apakah soalan dan jawapan temu bual untuk 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

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Pengenalan kepada Jasypt Jasypt ialah perpustakaan java yang membenarkan pembangun menambah fungsi penyulitan asas pada projeknya dengan usaha yang minimum dan tidak memerlukan pemahaman yang mendalam tentang cara penyulitan berfungsi dengan tinggi untuk penyulitan sehala dan dua hala. teknologi penyulitan berasaskan piawai. Sulitkan kata laluan, teks, nombor, perduaan... Sesuai untuk penyepaduan ke dalam aplikasi berasaskan Spring, API terbuka, untuk digunakan dengan mana-mana pembekal JCE... Tambahkan kebergantungan berikut: com.github.ulisesbocchiojasypt-spring-boot-starter2 Faedah Jasypt melindungi keselamatan sistem kami Walaupun kod itu bocor, sumber data boleh dijamin.

Senario penggunaan 1. Tempahan berjaya dibuat tetapi pembayaran tidak dibuat dalam masa 30 minit. Pembayaran tamat masa dan pesanan dibatalkan secara automatik 2. Pesanan telah ditandatangani dan tiada penilaian dilakukan selama 7 hari selepas ditandatangani. Jika pesanan tamat dan tidak dinilai, sistem lalai kepada penilaian positif 3. Pesanan dibuat dengan jayanya jika peniaga tidak menerima pesanan selama 5 minit, pesanan itu dibatalkan peringatan mesej teks dihantar... Untuk senario dengan kelewatan yang lama dan prestasi masa nyata yang rendah, kami boleh Gunakan penjadualan tugas untuk melaksanakan pemprosesan undian biasa. Contohnya: xxl-job Hari ini kita akan memilih

1. Redis melaksanakan prinsip kunci teragih dan mengapa kunci teragih diperlukan Sebelum bercakap tentang kunci teragih, adalah perlu untuk menjelaskan mengapa kunci teragih diperlukan. Lawan daripada kunci yang diedarkan ialah kunci yang berdiri sendiri Apabila kami menulis program berbilang benang, kami mengelakkan masalah data yang disebabkan oleh mengendalikan pembolehubah yang dikongsi pada masa yang sama Kami biasanya menggunakan kunci untuk mengecualikan pembolehubah yang dikongsi bersama untuk memastikan ketepatannya pembolehubah yang dikongsi skop penggunaannya adalah dalam proses yang sama. Jika terdapat berbilang proses yang perlu mengendalikan sumber yang dikongsi pada masa yang sama, bagaimanakah ia boleh saling eksklusif? Aplikasi perniagaan hari ini biasanya merupakan seni bina perkhidmatan mikro, yang juga bermakna bahawa satu aplikasi akan menggunakan berbilang proses Jika berbilang proses perlu mengubah suai baris rekod yang sama dalam MySQL, untuk mengelakkan data kotor yang disebabkan oleh operasi yang tidak teratur, keperluan pengedaran. untuk diperkenalkan pada masa ini. Gaya dikunci. Ingin mencapai mata

Springboot membaca fail, tetapi tidak boleh mengakses perkembangan terkini selepas membungkusnya ke dalam pakej balang Terdapat situasi di mana springboot tidak boleh membaca fail selepas membungkusnya ke dalam pakej balang adalah tidak sah dan hanya boleh diakses melalui strim. Fail berada di bawah resources publicvoidtest(){Listnames=newArrayList();InputStreamReaderread=null;try{ClassPathResourceresource=newClassPathResource("name.txt");Input

SpringBoot dan SpringMVC adalah kedua-dua rangka kerja yang biasa digunakan dalam pembangunan Java, tetapi terdapat beberapa perbezaan yang jelas antara mereka. Artikel ini akan meneroka ciri dan penggunaan kedua-dua rangka kerja ini dan membandingkan perbezaannya. Mula-mula, mari belajar tentang SpringBoot. SpringBoot telah dibangunkan oleh pasukan Pivotal untuk memudahkan penciptaan dan penggunaan aplikasi berdasarkan rangka kerja Spring. Ia menyediakan cara yang pantas dan ringan untuk membina bersendirian, boleh dilaksanakan

1. Sesuaikan RedisTemplate1.1, mekanisme siri lalai RedisAPI Pelaksanaan cache Redis berasaskan API menggunakan templat RedisTemplate untuk operasi cache data Di sini, buka kelas RedisTemplate dan lihat maklumat kod sumber kelas tersebut. Isytihar kunci, Pelbagai kaedah pesirilan nilai, nilai awal kosong @NullableprivateRedisSe

Apabila Springboot+Mybatis-plus tidak menggunakan pernyataan SQL untuk melaksanakan operasi penambahan berbilang jadual, masalah yang saya hadapi akan terurai dengan mensimulasikan pemikiran dalam persekitaran ujian: Cipta objek BrandDTO dengan parameter untuk mensimulasikan parameter yang dihantar ke latar belakang bahawa adalah amat sukar untuk melaksanakan operasi berbilang jadual dalam Mybatis-plus Jika anda tidak menggunakan alatan seperti Mybatis-plus-join, anda hanya boleh mengkonfigurasi fail Mapper.xml yang sepadan dan mengkonfigurasi ResultMap yang berbau dan kemudian. tulis pernyataan sql yang sepadan Walaupun kaedah ini kelihatan menyusahkan, ia sangat fleksibel dan membolehkan kita

Dalam projek, beberapa maklumat konfigurasi sering diperlukan Maklumat ini mungkin mempunyai konfigurasi yang berbeza dalam persekitaran ujian dan persekitaran pengeluaran, dan mungkin perlu diubah suai kemudian berdasarkan keadaan perniagaan sebenar. Kami tidak boleh mengekodkan konfigurasi ini dalam kod. Adalah lebih baik untuk menulisnya dalam fail konfigurasi Sebagai contoh, anda boleh menulis maklumat ini dalam fail application.yml. Jadi, bagaimana untuk mendapatkan atau menggunakan alamat ini dalam kod? Terdapat 2 kaedah. Kaedah 1: Kita boleh mendapatkan nilai yang sepadan dengan kunci dalam fail konfigurasi (application.yml) melalui ${key} beranotasi dengan @Value Kaedah ini sesuai untuk situasi di mana terdapat sedikit perkhidmatan mikro projek, Apabila perniagaan adalah rumit, logik
