Spring Boot เป็นเฟรมเวิร์กโอเพ่นซอร์สที่ใช้ทำแอพ Spring แบบสแตนด์อโลนระดับการผลิตที่คุณสามารถ “just run” ได้ ช่วยลดความยุ่งยากในกระบวนการบู๊ตสแตรปและการทำแอพ Spring โดยจัดเตรียมค่าเริ่มต้นที่พร้อมสำหรับการผลิตสำหรับการตั้งค่าโครงการของคุณ ช่วยให้คุณเริ่มและดำเนินการได้อย่างรวดเร็ว
คุณลักษณะสำคัญอย่างหนึ่งที่ทำให้ Spring Boot มีประโยชน์มากสำหรับการทำแอพคือแนวคิดของ “Starters” Spring Boot starters เป็นชุดของคำอธิบายการพึ่งพาที่สะดวกซึ่งสามารถรวมไว้ในแอปพลิเคชันของคุณ คุณได้รับร้านค้าแบบครบวงจรสำหรับ Spring และเทคโนโลยีที่เกี่ยวข้องทั้งหมดที่คุณต้องการ โดยไม่ต้องค้นหาและระบุไลบรารีด้วยตนเอง เป้าหมายของโปรแกรมเริ่มต้นเหล่านี้คือทำให้การสร้างและการจัดการการพึ่งพา (dependency) ของคุณง่ายขึ้น
1. Spring Boot Starters คืออะไร
โดยพื้นฐานแล้ว Spring Boot Starters คือชุดของการอ้างอิงที่กำหนดไว้ล่วงหน้าซึ่งคุณสามารถรวมไว้ในการทำแอพ Spring Boot ของคุณได้ สตาร์ทเตอร์เหล่านี้ทำให้กระบวนการจัดการการพึ่งพาง่ายขึ้น ทำให้คุณสามารถรวมไลบรารีที่จำเป็นได้โดยไม่ต้องค้นหาความเข้ากันได้ของเวอร์ชันและการพึ่งพาเฉพาะที่คุณต้องการสำหรับฟังก์ชันเฉพาะ
ทีม Spring Boot ได้รวบรวมรายการการพึ่งพาที่ใช้กันทั่วไปและรวมเข้าด้วยกันเป็นการเริ่มต้น ตัวอย่างเช่น หากคุณกำลังทำแอพ แทนที่จะเพิ่มการอ้างอิงหลายรายการที่เกี่ยวข้องกับ Spring MVC, เซิร์ฟเวอร์แบบฝังตัว, ความปลอดภัย ฯลฯ คุณสามารถเพิ่มได้ จากนั้น Spring Boot spring-boot-starter-web
จะจัดการส่วนที่เหลือ
Starters ให้ประโยชน์มากมายเช่น:
- ลดความซับซ้อนของการจัดการการพึ่งพา : Starters จัดการการตรวจสอบความเข้ากันได้และการจัดการเวอร์ชัน ดังนั้นคุณจึงไม่ต้องกังวลเกี่ยวกับเวอร์ชันที่ไม่ตรงกันหรือการพึ่งพาที่ขาดหายไป
- ประหยัดเวลา : ด้วยเครื่องมือเริ่มต้น คุณไม่จำเป็นต้องเสียเวลาค้นหาไลบรารีที่คุณต้องการและเวอร์ชันที่เข้ากันได้ตามลำดับ คุณสามารถเพิ่มผู้เริ่มต้นและเริ่มต้นได้โดยตรง
- การหลีกเลี่ยงข้อผิดพลาดทั่วไป : บ่อยครั้งที่ปัญหาเกี่ยวกับการขึ้นต่อกันเป็นสาเหตุของข้อผิดพลาดในแอปพลิเคชัน Spring เมื่อใช้สตาร์ทเตอร์ คุณจะหลีกเลี่ยงหลุมพรางที่อาจเกิดขึ้นได้มากมายเหล่านี้
2. Spring Boot Starters ยอดนิยม
ต่อไปนี้คือตัวอย่างบางส่วนของ Spring Boot Starters ที่เป็นที่นิยม:
spring-boot-starter-web
: ใช้สำหรับสร้างเว็บ รวมถึง RESTful แอปพลิเคชันโดยใช้ Spring MVC ใช้ Tomcat เป็นคอนเทนเนอร์ฝังตัวเริ่มต้นspring-boot-starter-data-jpa
: ตัวเริ่มต้นนี้ใช้สำหรับ Spring Data JPA พร้อมไฮเบอร์เนตspring-boot-starter-security
: ใช้สำหรับ Spring Securityspring-boot-starter-test
: Starter สำหรับทดสอบแอปพลิเคชัน Spring Boot กับไลบรารีต่างๆ รวมถึง JUnit, Hamcrest และ Mockitospring-boot-starter-thymeleaf
: ใช้สำหรับทำเว็บแอปพลิเคชัน MVC โดยใช้มุมมอง Thymeleaf
รายการนี้ไม่ครบถ้วนสมบูรณ์ มีโปรแกรมเริ่มต้นอื่นๆ ให้เลือกใช้งานมากมาย ซึ่งแต่ละรายการได้รับการออกแบบมาสำหรับแอปพลิเคชันประเภทต่างๆ โดยเฉพาะ เช่น การตั้งโปรแกรมแบบรีแอกทีฟ การประมวลผลเป็นชุด การผสานรวม และอื่นๆ
3. สร้าง Spring Boot Application แรกของคุณ
ตอนนี้เราเข้าใจแนวคิดของ Spring Boot Starters แล้ว มาทำแอพ Spring Boot แรกของเราโดยใช้ตัวเริ่มต้น spring-boot-starter-web
สำหรับสิ่งนี้ เราจะใช้ Spring Initializr ซึ่งเป็นเครื่องมือที่ยอดเยี่ยมที่ทีม Spring จัดหาให้เพื่อบูตแอปพลิเคชัน Spring Boot
- การตั้งค่าโครงการ
ไปที่Spring Initializr เลือกตัวเลือกการตั้งค่าโครงการของคุณ สำหรับตัวอย่างนี้ ให้เลือกMaven Project
ด้วยภาษาJava
และเวอร์ชันของ Spring Boot ที่เหมาะกับความต้องการของคุณ กรอกรายละเอียดGroup
และArtifact
ตามความต้องการของคุณ ในส่วนDependencies
ให้ค้นหาWeb
และเพิ่ม ซึ่งจะรวมถึงการพึ่งพาspring-boot-starter-web
เมื่อตั้งค่าทุกอย่างเรียบร้อยแล้ว ให้คลิกที่Generate Project
- สำรวจโครงสร้างโครงการ
เปิดเครื่องรูดโครงการที่ดาวน์โหลดและนำเข้าไปยัง IDE ที่คุณชื่นชอบ คุณจะเห็นโครงสร้างโครงการอย่างง่ายพร้อมคลาสแอปพลิเคชันหลักและไฟล์pom.xml
ไฟล์pom.xml
ประกอบด้วยการอ้างอิง Maven สำหรับโครงการ ที่นี่คุณสามารถดูการพึ่งพาspring-boot-starter-web
ที่รวมอยู่ - สร้าง REST Controller อย่างง่าย
มาสร้าง REST Controller อย่างง่ายกันเถอะ ภายใต้ไดเร็กทอรีsrc/main/java
ให้สร้างคลาสใหม่และใส่คำอธิบาย@RestController
ประกอบด้วย ในคลาสนี้ ให้สร้างเมธอดง่ายๆ ที่ส่งคืนข้อความสตริง ใส่คำอธิบายประกอบเมธอดนี้ด้วย@GetMapping("/")
ซึ่งทำให้เมธอดนี้ตอบสนองต่อคำขอ HTTP GET ที่รูท (/
) URL ของแอ็พพลิเคชัน@RestController
public class HomeController {
@GetMapping("/")
public String home() {
return "Welcome to our Spring Boot application!";
}
} - การเรียกใช้แอปพลิเคชัน
ตอนนี้ คุณสามารถเรียกใช้แอปพลิเคชันของคุณเพียงแค่เรียกใช้คลาสแอปพลิเคชันหลัก เซิร์ฟเวอร์ฝังตัวของ Spring Boot จะเริ่มทำงาน และแอปพลิเคชันของคุณจะทำงานอยู่ - การทดสอบแอปพลิเคชัน
เปิดเว็บเบราว์เซอร์และไปที่http://localhost:8080
คุณควรเห็นข้อความ “Welcome to our Spring Boot application!”
Spring Boot Starters เป็นส่วนสำคัญของระบบนิเวศ Spring Boot ทำให้ขั้นตอนการตั้งค่าและการทำแอพง่ายขึ้น ลดโอกาสเกิดข้อผิดพลาดและประหยัดเวลาในการทำแอพที่สำคัญ ด้วยการใช้ประโยชน์จากโปรแกรมเริ่มต้นเหล่านี้ คุณสามารถมุ่งเน้นไปที่การสร้างคุณลักษณะเฉพาะของแอปพลิเคชันของคุณโดยไม่ต้องกังวลเกี่ยวกับการตั้งค่าและการกำหนดค่า เริ่มทำแอพ Spring Boot ของคุณวันนี้ และสัมผัสพลังของการเริ่มด้วยตัวคุณเอง