Spring Boot

Spring Boot DevTools

DevTools สำหรับการพัฒนา: live reload, การรีสตาร์ทอัตโนมัติ, การกำหนดค่า dev, remote debugging

15 คำถามสัมภาษณ์·
Junior
1

Spring Boot DevTools คืออะไร?

คำตอบ

Spring Boot DevTools เป็นโมดูลสำหรับการพัฒนาที่ช่วยยกระดับประสบการณ์ของนักพัฒนาด้วยฟีเจอร์ต่าง ๆ เช่น automatic restart (รีสตาร์ทอัตโนมัติเมื่อโค้ดเปลี่ยน), LiveReload (รีเฟรชเบราว์เซอร์อัตโนมัติ) และ remote debugging โดย DevTools จะถูกปิดใช้งานอัตโนมัติในโปรดักชัน (ตรวจพบผ่านการแพ็กเกจ JAR/WAR) เพื่อหลีกเลี่ยงผลกระทบต่อประสิทธิภาพ dependency เสริมตัวนี้ช่วยเร่งวงจรการพัฒนาอย่างมากด้วยการลดการรีสตาร์ทแบบแมนนวล

2

ฟีเจอร์ใดของ DevTools ที่ช่วยให้รีเฟรชเบราว์เซอร์โดยอัตโนมัติ?

คำตอบ

LiveReload คือเซิร์ฟเวอร์ฝังตัวที่รับฟังบนพอร์ต 35729 และเรียกให้เบราว์เซอร์รีเฟรชโดยอัตโนมัติทุกครั้งที่ทรัพยากร (HTML, CSS, JS, รูปภาพ) ถูกแก้ไขใน classpath ต่างจาก automatic restart ที่รีสตาร์ท Spring context โดย LiveReload จะมุ่งเน้นที่ asset ฝั่ง front-end เพื่อให้ผลตอบรับทางภาพได้ทันที ต้องติดตั้งส่วนขยายเบราว์เซอร์ LiveReload เพื่อสร้างการเชื่อมต่อ WebSocket กับเซิร์ฟเวอร์ DevTools

3

จะเพิ่ม Spring Boot DevTools ลงในโปรเจกต์ Maven ได้อย่างไร?

คำตอบ

DevTools ถูกเพิ่มเป็น dependency ของ Maven โดยใช้ optional scope และ true ในการกำหนดค่า optional scope รับประกันว่า DevTools จะไม่ถูกส่งต่อแบบ transitive ไปยังโปรเจกต์ที่พึ่งพาโปรเจกต์ของคุณ ในขณะที่ true ช่วยให้สามารถยกเว้น DevTools ในระหว่างการ packaging สำหรับ production ได้ (spring-boot-maven-plugin พร้อม excludeDevtools) การป้องกันสองชั้นนี้รับประกันว่า DevTools จะอยู่ในสภาพแวดล้อมการพัฒนาอย่างเคร่งครัด optional scope คือ best practice สำหรับ dependency ที่ใช้เฉพาะการพัฒนาเท่านั้น

4

พฤติกรรมของ DevTools ในสภาพแวดล้อม production เป็นอย่างไร?

5

ข้อได้เปรียบหลักของ automatic restart ใน DevTools คืออะไร?

+12 คำถามสัมภาษณ์

หัวข้อสัมภาษณ์ Spring Boot อื่นๆ

Spring Core - IoC & DI

Junior
22 คำถาม

Spring Boot Auto-Configuration

Junior
20 คำถาม

Spring Boot Starters

Junior
18 คำถาม

Application Properties & YAML

Junior
16 คำถาม

การทำ Logging ด้วย SLF4J และ Logback

Junior
20 คำถาม

Spring MVC Basics

Mid-Level
20 คำถาม

Spring REST Controllers

Mid-Level
20 คำถาม

Request & Response Handling

Mid-Level
20 คำถาม

การจัดการข้อยกเว้น

Mid-Level
25 คำถาม

Bean Validation

Mid-Level
25 คำถาม

พื้นฐาน Spring Data JPA

Mid-Level
25 คำถาม

เอนทิตี JPA และความสัมพันธ์

Mid-Level
30 คำถาม

การสืบค้น JPA

Mid-Level
30 คำถาม

Spring Data Repositories

Mid-Level
25 คำถาม

พื้นฐาน Spring Security

Mid-Level
25 คำถาม

Spring Boot Actuator

Mid-Level
20 คำถาม

การทดสอบหน่วยด้วย JUnit และ Mockito

Mid-Level
30 คำถาม

การทดสอบ Spring Boot

Mid-Level
30 คำถาม

Profiles และ Environment

Mid-Level
20 คำถาม

RestTemplate และ WebClient

Mid-Level
24 คำถาม

Async และ Scheduling

Mid-Level
25 คำถาม

Caching ด้วย Spring

Mid-Level
25 คำถาม

Spring WebFlux (Reactive)

Mid-Level
25 คำถาม

ทรานแซกชัน Spring

Senior
30 คำถาม

การยืนยันตัวตนและการให้สิทธิ์ขั้นสูง

Senior
30 คำถาม

JWT และความปลอดภัยแบบ Stateless

Senior
20 คำถาม

OAuth2 และ Authorization Server

Senior
20 คำถาม

Spring Boot และ Docker

Senior
19 คำถาม

Microservices ด้วย Spring

Senior
25 คำถาม

Spring Cloud Config

Senior
19 คำถาม

การเพิ่มประสิทธิภาพการทำงาน

Senior
30 คำถาม

GraalVM Native Images

Senior
20 คำถาม

เชี่ยวชาญ Spring Boot สำหรับการสัมภาษณ์ครั้งถัดไป

เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์

เริ่มใช้ฟรี