Spring Boot membantu Anda membuat aplikasi dan layanan tingkat produksi bertenaga Spring dengan kerumitan minimal. Dibutuhkan pandangan yang berpendirian teguh tentang platform Spring sehingga pengguna baru dan lama dapat dengan cepat mendapatkan apa yang mereka butuhkan.
Anda dapat menggunakan Spring Boot untuk membuat aplikasi Java yang berdiri sendiri yang dapat dimulai menggunakan java -jar
atau penerapan WAR yang lebih tradisional. Kami juga menyediakan alat baris perintah yang menjalankan skrip Spring.
Tujuan utama kami adalah:
Memberikan pengalaman memulai yang jauh lebih cepat dan dapat diakses secara luas untuk semua pengembangan Spring.
Bersikaplah berpendirian keras, tetapi segeralah menyingkir karena persyaratan mulai menyimpang dari standarnya.
Menyediakan serangkaian fitur non-fungsional yang umum untuk proyek kelas besar (misalnya, server tertanam, keamanan, metrik, pemeriksaan kesehatan, konfigurasi eksternal).
Sama sekali tidak ada pembuatan kode dan tidak ada persyaratan untuk konfigurasi XML.
Dokumentasi referensi mencakup petunjuk instalasi terperinci serta panduan getting started
yang komprehensif.
Berikut teaser singkat aplikasi Spring Boot lengkap di Java:
import org.springframework.boot.*;import org.springframework.boot.autoconfigure.*;import org.springframework.web.bind.annotation.*;@RestController@SpringBootApplicationpublic class Contoh {@RequestMapping("/")String home( ) {kembalikan "Halo Dunia!"; }public static void main(String[] args) {SpringApplication.run(Example.class, args); } }
Apakah Anda mengalami masalah dengan Spring Boot? Kami ingin membantu!
Periksa dokumentasi referensi, terutama Panduannya — dokumentasi tersebut memberikan solusi terhadap pertanyaan paling umum.
Pelajari dasar-dasar Spring — Spring Boot dibangun berdasarkan banyak proyek Spring lainnya; periksa situs web spring.io untuk mengetahui banyak dokumentasi referensi. Jika Anda baru mengenal Spring, cobalah salah satu panduan ini.
Jika Anda melakukan peningkatan, baca catatan rilis untuk petunjuk peningkatan dan fitur "baru dan penting".
Ajukan pertanyaan — kami memantau stackoverflow.com untuk pertanyaan yang diberi tag spring-boot
. Anda juga dapat mengobrol dengan komunitas di Gitter.
Laporkan bug dengan Spring Boot di github.com/spring-projects/spring-boot/issues.
Spring Boot menggunakan sistem pelacakan masalah terintegrasi GitHub untuk mencatat bug dan permintaan fitur. Jika Anda ingin mengangkat suatu masalah, silakan ikuti rekomendasi di bawah ini:
Sebelum Anda mencatat bug, silakan cari pelacak masalah untuk melihat apakah seseorang telah melaporkan masalah tersebut.
Jika masalah belum ada, buatlah masalah baru.
Harap berikan informasi sebanyak mungkin terkait laporan masalah. Kami ingin mengetahui versi Spring Boot, sistem operasi, dan versi JVM yang Anda gunakan.
Jika Anda perlu menempelkan kode atau menyertakan pelacakan tumpukan, gunakan Penurunan Harga. ``` lolos sebelum dan sesudah teks Anda.
Jika memungkinkan, cobalah membuat kasus uji atau proyek yang mereplikasi masalah dan melampirkannya pada masalah tersebut.
Anda tidak perlu membangun dari sumber untuk menggunakan Spring Boot (biner di repo.spring.io), tetapi jika Anda ingin mencoba yang terbaru dan terhebat, Spring Boot dapat dibuat dan dipublikasikan ke cache Maven lokal Anda menggunakan Gradle pembungkus. Anda juga membutuhkan JDK 17.
$ ./gradlew terbitkanToMavenLocal
Ini akan membuat semua toples dan dokumentasi dan mempublikasikannya ke cache Maven lokal Anda. Itu tidak akan menjalankan tes apa pun. Jika Anda ingin membangun semuanya, gunakan tugas build
:
$ ./gradlew membangun
Ada beberapa modul di Spring Boot. Berikut ini ikhtisar singkatnya:
Pustaka utama menyediakan fitur yang mendukung bagian lain dari Spring Boot. Ini termasuk:
Kelas SpringApplication
, menyediakan metode kenyamanan statis yang dapat digunakan untuk menulis Aplikasi Spring yang berdiri sendiri. Tugas satu-satunya adalah membuat dan menyegarkan Spring ApplicationContext
yang sesuai.
Aplikasi web tertanam dengan pilihan kontainer (Tomcat, Jetty, atau Undertow).
Dukungan konfigurasi eksternal kelas satu.
Inisialisasi ApplicationContext
yang nyaman, termasuk dukungan untuk default logging yang masuk akal.
Spring Boot dapat mengonfigurasi sebagian besar aplikasi umum berdasarkan konten jalur kelasnya. Anotasi @EnableAutoConfiguration
tunggal memicu konfigurasi otomatis konteks Spring.
Konfigurasi otomatis mencoba menyimpulkan kacang mana yang mungkin dibutuhkan pengguna. Misalnya, jika HSQLDB
berada di classpath, dan pengguna belum mengonfigurasi koneksi database apa pun, maka mereka mungkin ingin database dalam memori ditentukan. Konfigurasi otomatis akan selalu mundur saat pengguna mulai menentukan kacang mereka sendiri.
Pemula adalah sekumpulan deskriptor ketergantungan yang dapat Anda sertakan dalam aplikasi Anda. Anda mendapatkan toko serba ada untuk semua Spring dan teknologi terkait yang Anda perlukan tanpa harus menelusuri kode contoh dan menyalin-tempel banyak deskriptor ketergantungan. Misalnya, jika Anda ingin mulai menggunakan Spring dan JPA untuk akses database, sertakan dependensi spring-boot-starter-data-jpa
dalam proyek Anda, dan Anda siap melakukannya.
Titik akhir aktuator memungkinkan Anda memantau dan berinteraksi dengan aplikasi Anda. Spring Boot Actuator menyediakan infrastruktur yang diperlukan untuk titik akhir aktuator. Ini berisi dukungan anotasi untuk titik akhir aktuator. Modul ini menyediakan banyak titik akhir, termasuk HealthEndpoint
, EnvironmentEndpoint
, BeansEndpoint
, dan masih banyak lagi.
Ini menyediakan konfigurasi otomatis untuk titik akhir aktuator berdasarkan konten jalur kelas dan sekumpulan properti. Misalnya, jika Micrometer berada di classpath, maka MetricsEndpoint
akan dikonfigurasi secara otomatis. Ini berisi konfigurasi untuk mengekspos titik akhir melalui HTTP atau JMX. Sama seperti Spring Boot AutoConfigure, ini akan mundur saat pengguna mulai mendefinisikan kacang mereka sendiri.
Modul ini berisi item inti dan anotasi yang dapat membantu saat menguji aplikasi Anda.
Seperti modul konfigurasi otomatis Spring Boot lainnya, spring-boot-test-autoconfigure menyediakan konfigurasi otomatis untuk pengujian berdasarkan classpath. Ini mencakup banyak anotasi yang dapat secara otomatis mengonfigurasi bagian aplikasi Anda yang perlu diuji.
Spring Boot Loader menyediakan saus rahasia yang memungkinkan Anda membuat satu file jar yang dapat diluncurkan menggunakan java -jar
. Secara umum, Anda tidak perlu menggunakan spring-boot-loader
secara langsung tetapi bekerja dengan plugin Gradle atau Maven.
Modul spring-boot-devtools menyediakan fitur waktu pengembangan tambahan, seperti restart otomatis, untuk pengalaman pengembangan aplikasi yang lebih lancar. Alat pengembang secara otomatis dinonaktifkan saat menjalankan aplikasi yang dikemas sepenuhnya.
Situs spring.io berisi beberapa panduan yang menunjukkan cara menggunakan Spring Boot langkah demi langkah:
Membangun Aplikasi dengan Spring Boot adalah panduan pengantar yang menunjukkan cara membuat aplikasi, menjalankannya, dan menambahkan beberapa layanan manajemen.
Membangun Layanan Web RESTful dengan Spring Boot Actuator adalah panduan untuk membuat layanan web REST dan juga menunjukkan bagaimana server dapat dikonfigurasi.
Spring Boot adalah perangkat lunak Open Source yang dirilis di bawah lisensi Apache 2.0.