วิธีสร้างโปรเจ็กต์ Spring Boot ใน Eclipse

เผยแพร่แล้ว: 2021-05-27

ภาษาโปรแกรม Java มักถูกกล่าวว่าซับซ้อนเกินไปและยุ่งยากในแง่ของการสร้างแอปพลิเคชันที่เรียบง่าย อย่างไรก็ตาม Java มีแพลตฟอร์มที่เสถียรซึ่งนำเสนอระบบนิเวศที่สมบูรณ์มาก ซึ่งทำให้นักพัฒนาซอฟต์แวร์สามารถสร้างซอฟต์แวร์ที่มีประสิทธิภาพโดยไม่ต้องยุ่งยากมากนัก

Spring Framework ซึ่งเป็นหนึ่งในเฟรมเวิร์กอันทรงพลังที่มีอยู่ในระบบนิเวศของ Java นำเสนอคอลเล็กชันของโมเดลการกำหนดค่าและการเขียนโปรแกรม เพื่อทำให้การพัฒนาและทดสอบแอปพลิเคชันใน Java ง่ายขึ้น

ในบทความนี้ เราจะพูดถึงคุณสมบัติที่มีประโยชน์บางอย่างของ STS IDE (Eclipse Spring Tool Suite) ซึ่งมีประโยชน์สำหรับคุณในการพัฒนาโปรเจ็กต์ Spring Boot หรือแอพพลิเคชั่นใน Eclipse เราจะพูดถึงประโยชน์ต่างๆ ของ STS เมื่อเทียบกับวิธีดั้งเดิมในการสร้างแอปพลิเคชัน Spring ด้วย Eclipse

จากนั้น เราจะมาดูวิธีบูตสแตรปแอปพลิเคชัน วิธีดำเนินการ และสุดท้าย วิธีเพิ่มการพึ่งพาเพิ่มเติม สุดท้าย เราจะสรุปบทช่วยสอนนี้โดยเพิ่มอาร์กิวเมนต์ของแอปพลิเคชัน

สารบัญ

คุณสมบัติหลักของ STS

Spring Tool Suite ย่อมาจาก STS เป็นสภาพแวดล้อมการพัฒนาตาม Eclipse ที่ปรับแต่งเป็นพิเศษสำหรับการสร้างโปรเจ็กต์ Spring Boot และแอปพลิเคชันที่ไร้รอยต่อ

STS จัดเตรียมสภาพแวดล้อมที่พร้อมใช้งานสำหรับนักพัฒนาสำหรับการนำไปใช้ การดีบัก การรัน และการปรับใช้แอปพลิเคชัน Spring STS ยังรวมถึงการผสานรวมสำหรับ Pivotal tc Server, Pivotal Cloud Foundry, Git, Maven และ AspectJ

Spring Tool Suite เป็นชุดที่สร้างเป็นเลเยอร์เพิ่มเติมบน Eclipse รุ่นล่าสุด

การกำหนดค่าโครงการ

STS เข้าใจโครงสร้างโปรเจ็กต์ Java พื้นฐานทั้งหมด เครื่องมือจะแยกวิเคราะห์ไฟล์การกำหนดค่าและแสดงข้อมูลโดยละเอียดเกี่ยวกับ bean ที่กำหนด การขึ้นต่อกันแบบฉีด เนมสเปซที่ใช้ และการแยกภาพรวมสำหรับแบบแผนบางแบบ

ภาพรวมคุณสมบัติของ STS

Eclipse STS ให้การแก้ไขอย่างรวดเร็วสำหรับแอปพลิเคชัน Spring ของคุณในขณะที่ตรวจสอบโครงการของคุณ ตัวอย่างเช่น เมื่อคุณทำงานกับ Spring Data JPA อาจใช้ Eclipse IDE เพื่อตรวจสอบความถูกต้องของชื่อวิธีการสืบค้น

Spring Tool Suite ยังให้มุมมองแบบกราฟิกที่เข้าใจง่ายของวิธี bean ต่างๆ และความสัมพันธ์ที่พวกเขามีอยู่ หากคุณต้องการดูตัวแก้ไขกราฟิกต่างๆ ที่มาพร้อมกับ STS อย่างละเอียดยิ่งขึ้น คุณสามารถตรวจสอบมุมมองที่อยู่ภายใต้หน้าต่างเมนู แสดงมุมมอง และสปริงตามลำดับ

STS ยังเสนอคุณสมบัติเพิ่มเติมสำหรับนักพัฒนาที่ไม่ จำกัด เฉพาะแอปพลิเคชันของ Spring คุณสามารถตรวจสอบรายการคุณสมบัติทั้งหมด ได้ ที่นี่

การสร้างแอปพลิเคชันสปริง

เริ่มต้นด้วยการบูตแอปพลิเคชันอย่างง่าย หากไม่มี STS แอปพลิเคชัน Spring สามารถสร้างได้โดยใช้เว็บไซต์ Spring Initializer หรือ Spring Boot CLI สิ่งนี้สามารถทำให้ง่ายขึ้นอีกโดยคลิกที่ Create Spring Starter Project จากแดชบอร์ด STS

ในหน้าจอ 'New Spring Starter Project' ใช้การตั้งค่าเริ่มต้นหรือทำการปรับเปลี่ยนตามโครงการของคุณ จากนั้นไปที่หน้าจอถัดไป ที่นั่น เลือก 'เว็บ' และคลิกเสร็จสิ้น

ตอนนี้ pom.xml ของคุณควรมีลักษณะดังนี้:

<แม่>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.4.0</version>

<relativePath/> <!– ค้นหาพาเรนต์จากที่เก็บ –>

</parent>

<คุณสมบัติ>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<java.version>1.8</java.version>

</คุณสมบัติ>

<การพึ่งพา>

<การพึ่งพา>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

<การพึ่งพา>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>ทดสอบ</scope>

</dependency>

</dependencies>

หากคุณใช้เวอร์ชันเก่าสำหรับ Spring Boot โปรดค้นหาเวอร์ชันล่าสุด ที่ นี่

เรียกใช้แอปพลิเคชัน

แอปพลิเคชันที่กล่าวถึงก่อนหน้านี้สามารถเริ่มต้นได้ด้วยการคลิกขวาที่โปรเจ็กต์และเลือก 'run as Spring Boot App' หากไม่มี STS คุณสามารถเรียกใช้แอปพลิเคชันจาก CLI โดยใช้คำสั่งต่อไปนี้:

$ mvn สปริงบูต:run

โดยค่าเริ่มต้น แอปพลิเคชัน Spring จะเริ่มต้นด้วย Tomcat ซึ่งทำงานบนพอร์ต 8080 ณ จุดนี้ แอปพลิเคชันเริ่มต้นที่พอร์ต 8080 แต่ยังไม่ได้ดำเนินการใดๆ เนื่องจากเรายังไม่ได้ติดตั้งโค้ดใดๆ ในนั้น

การบันทึกและคอนโซล ANSI

เมื่อคุณดำเนินการโครงการจาก IDE ของคุณโดยใช้คำสั่ง 'run' คุณจะพบว่าคอนโซลแสดงผลคำสั่งบันทึกที่มีรหัสสี ในกรณีที่คุณต้องการปิดคำสั่งเหล่านี้ คุณสามารถไปที่ 'เรียกใช้การกำหนดค่า' และปิดใช้งานช่องทำเครื่องหมายที่ระบุว่า 'เปิดใช้งานเอาต์พุตคอนโซล ANSI บนแท็บ Spring Boot'

อีกทางหนึ่ง คุณยังสามารถปิดใช้งานคำสั่งการบันทึกโดยการตั้งค่าคุณสมบัติในไฟล์ applications.properties ดังนี้:

spring.output.ansi.enabled=NEVER

การตรวจสอบชื่อแบบสอบถาม JPA

ในบางครั้ง การใช้ชั้นการเข้าถึงข้อมูลอาจกลายเป็นกิจกรรมที่ยุ่งยาก อาจต้องเขียนโค้ดสำเร็จรูปจำนวนมากเพื่อให้ทราบข้อความค้นหาที่ง่ายมากและดำเนินการแบ่งหน้า Spring Data JPA มุ่งหวังที่จะอำนวยความสะดวกให้กับการนำชั้นการเข้าถึงข้อมูลไปใช้อย่างราบรื่น

ในการเริ่มต้น ให้เพิ่มการพึ่งพา JPA ต่อไปนี้ให้กับ pom.xml ที่สร้างไว้ก่อนหน้านี้:

<การพึ่งพา>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-data-jpa</artifactId>

</dependency>

<การพึ่งพา>

<groupId>ฐานข้อมูล com.h2</groupId>

<artifactId>h2</artifactId>

</dependency>

คุณอาจสังเกตเห็นว่าไม่มีการระบุเวอร์ชันของคุณในการประกาศข้างต้น นี่เป็นเพราะความจริงที่ว่าการพึ่งพาได้รับการจัดการโดย spring-boot-starter-parent

เพื่อให้ JPA ทำงานได้ คุณจะต้องกำหนดเอนทิตีและตัวจัดการธุรกรรมสำหรับโครงการของคุณอย่างเหมาะสม อย่างไรก็ตาม การทำงานกับ Spring จะกำหนดค่าเหล่านี้ให้คุณโดยอัตโนมัติ สิ่งเดียวที่ต้องทำจากจุดสิ้นสุดของคุณคือการสร้างคลาสเอนทิตีจริง

เอนทิตีเหล่านี้ได้รับการจัดการโดยตัวจัดการเอนทิตีซึ่งสร้างโดยคอนเทนเนอร์ มาสร้างคลาสเอนทิตีชื่อ Foo กันเถอะ:

@เอนทิตี

คลาสสาธารณะ Foo ใช้งาน Serializable {

@ไอดี

@GeneratedValue

รหัสจำนวนเต็มส่วนตัว;

ชื่อสตริงส่วนตัว

// ตัวรับมาตรฐานและตัวตั้งค่า

}

คอนเทนเนอร์จะสแกนคลาสทั้งหมดที่ใส่คำอธิบายประกอบด้วย @Entity จากรูทของแพ็คเกจการกำหนดค่า

ต่อไป มาสร้างที่เก็บ JPA สำหรับเอนทิตี Foo:

อินเทอร์เฟซสาธารณะ FooRepository ขยาย JpaRepository<Foo, Integer> {

Foo สาธารณะ findByNames (ชื่อสตริง);

}

ในขั้นตอนนี้ คุณอาจสังเกตเห็นแล้วว่า IDE ของคุณตั้งค่าสถานะวิธีการสืบค้นนี้โดยมีข้อยกเว้นดังต่อไปนี้:

ข้อความค้นหาที่ได้รับไม่ถูกต้อง! ไม่พบชื่อคุณสมบัติสำหรับประเภท Foo!

สิ่งนี้เกิดขึ้นเนื่องจากคุณบังเอิญเขียน 's' พิเศษที่ส่วนท้ายของชื่อเมธอดของที่เก็บ JPA ในการแก้ไขข้อยกเว้นนี้ ให้ลบส่วนพิเศษออกแล้วทำให้เป็นดังนี้:

สาธารณะ Foo findByName(ชื่อสตริง);

ค้นหาประเภทโถ

Jar Type Search เป็นคุณลักษณะที่นำมาใช้ใน STS เวอร์ชัน 3.5.0 ฟีเจอร์นี้จัดเตรียมข้อเสนอที่ใช้เนื้อหาช่วยสำหรับชั้นเรียนที่ยังไม่อยู่ในเส้นทางของชั้นเรียน STS ช่วยนักพัฒนาในการเพิ่มการพึ่งพาให้กับไฟล์ POM ของพวกเขา ในกรณีที่พวกเขาไม่ได้อยู่บน classpath

ตัวอย่างเช่น ให้เราเพิ่มบรรทัดในคลาสเอนทิตี Foo เพื่อให้ทำงานได้อย่างถูกต้อง โปรดตรวจสอบว่าคำสั่งนำเข้าสำหรับ java.util.List มีอยู่แล้ว

ตอนนี้เราอาจเพิ่ม Google Guava ได้ดังนี้:

รายการส่วนตัว <String> strings = รายการ // ctrl + SPACE เพื่อให้โค้ดสมบูรณ์

จากนั้น IDE จะแนะนำให้เพิ่มการพึ่งพาหลายรายการใน classpath เพิ่มการพึ่งพาเหล่านี้จาก com.google.common.collect กด return และเพิ่มการพึ่งพาจาก Guava

โถฝรั่งจะถูกเพิ่มโดยอัตโนมัติในไฟล์ pom.xml ของคุณดังต่อไปนี้:

<การพึ่งพา>

<groupId>com.google.guava</groupId>

<artifactId>ฝรั่ง</artifactId>

<version>19.0</version>

</dependency>

การเพิ่มอาร์กิวเมนต์แอปพลิเคชัน

หนึ่งในคุณสมบัติที่ทรงพลังที่สุดของ Spring framework คือการสนับสนุนการกำหนดค่าภายนอกที่สามารถส่งผ่านไปยังแอปพลิเคชันได้หลายวิธี - เป็นอาร์กิวเมนต์บรรทัดคำสั่ง ระบุในคุณสมบัติของไฟล์ YAML หรือเป็นคุณสมบัติของระบบ มาดูวิธีการเพิ่มตัวเลือกการกำหนดค่าเป็นอาร์กิวเมนต์การเริ่มแอปพลิเคชันโดยใช้ STS

สิ่งนี้แสดงให้เห็นโดยการกำหนดค่า Tomcat ให้เริ่มต้นบนพอร์ตอื่น

ในการรันแอปพลิเคชัน Spring บนพอร์ต Tomcat ที่ไม่ใช่ค่าเริ่มต้น (8080) คุณต้องใช้คำสั่งด้านล่าง ในคำสั่งต่อไปนี้ พอร์ตแบบกำหนดเองจะถูกระบุเป็นอาร์กิวเมนต์บรรทัดคำสั่ง

mvn spring-boot:run -Drun.arguments=”–server.port=7070″

เรียนรู้ หลักสูตรการพัฒนาซอฟต์แวร์ออนไลน์ จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว

บทสรุป

ในบทความนี้ เราพูดถึงวิธีดำเนินการโปรเจ็กต์ Spring และแอปพลิเคชันใน STS อย่างไรก็ตาม ยังไม่หมดเพียงเท่านี้ ยังมีฟีเจอร์ที่เป็นประโยชน์อีกมากมายที่สามารถใช้ได้ในระหว่างกระบวนการพัฒนา แม้ว่าบทช่วยสอนนี้จะช่วยให้คุณเริ่มต้นสร้าง Spring Boot Project ใน Eclipse STS ได้ดี แต่อย่าลืมว่ายังมีอีกหลายสิ่งให้คุณสำรวจและทดลอง

หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับ Java การพัฒนาซอฟต์แวร์แบบฟูลสแตก โปรดดูโปรแกรม Executive PG ของ upGrad & IIIT-B ในการพัฒนาซอฟต์แวร์แบบครบวงจร ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีการฝึกอบรมที่เข้มงวดมากกว่า 500 ชั่วโมง 9+ โครงการและการมอบหมาย สถานะศิษย์เก่า IIIT-B โครงการหลักในทางปฏิบัติและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

สปริงบูตคืออะไร?

ฤดูใบไม้ผลิไฮเบอร์เนตคืออะไร?

Spring hibernate เป็นเฟรมเวิร์กโอเพ่นซอร์สที่ใช้ในการพัฒนาแอพพลิเคชั่นจาวาระดับองค์กร Spring framework จัดการงานที่สำคัญที่สุดในแอปพลิเคชัน java ช่วยให้นักพัฒนาทำการเปลี่ยนแปลงโค้ดโดยไม่มีผลข้างเคียง ช่วยให้สามารถอ่านโค้ดได้และทำให้การจัดการข้อผิดพลาดของแอปพลิเคชันง่ายขึ้น รองรับการเข้าถึงข้อมูลและการทำแผนที่ข้อมูล เฟรมเวิร์กไฮเบอร์เนตเป็นเฟรมเวิร์กการคงอยู่ของจาวาสำหรับจาวาภาษาการเขียนโปรแกรมเชิงวัตถุ มีคุณลักษณะสำหรับการจัดการข้อมูลเชิงสัมพันธ์ในจาวา ไฮเบอร์เนตรองรับ Java data abstraction layer (jdo), java remote method invocation (rmi) และอินเทอร์เฟซธุรกรรม Java

สปริง initializr คืออะไร?

Spring Initializr เป็นเครื่องมือออนไลน์ที่มีประโยชน์สำหรับการเริ่มต้นใช้งาน Spring มันสร้างโครงการตามสิ่งที่คุณต้องการ ไม่ว่าคุณกำลังมองหาแอปพลิเคชัน CRUD ง่ายๆ หรือเว็บแอปพลิเคชันเต็มรูปแบบ เว็บไซต์เล็กๆ แห่งนี้จะช่วยให้คุณเริ่มต้นเขียนโค้ดได้ในเวลาไม่นาน เติมโปรเจ็กต์ของคุณด้วยเทคโนโลยีที่คุณเลือก (Java, Groovy, Grails ฯลฯ) และจะสร้างโครงสร้างพื้นฐานของโปรเจ็กต์และการอ้างอิง คุณสามารถเพิ่มการพึ่งพาเพิ่มเติมหรือปรับแต่งโครงการตามความต้องการของคุณได้ Spring Initializr เป็นเครื่องมือที่ยอดเยี่ยมมากที่ช่วยให้เริ่มโครงการ Spring Boot ใหม่ได้อย่างง่ายดาย มันสร้างโครงสร้างโครงการและไฟล์การกำหนดค่าที่คุณสามารถปรับแต่งได้ นอกจากนี้ยังให้คุณเลือกเทคโนโลยีต่างๆ ที่โครงการสามารถนำไปใช้ได้ เพื่อให้คุณได้รับประโยชน์จากตัวเลือกโดยไม่ต้องเสียเปรียบในการทำงานด้วยตนเอง