1. Spring Boot Nedir?
Spring Boot, Spring Framework’ün üzerine inşa edilmiş, geliştirme sürecini daha hızlı ve verimli hale getiren bir çerçevedir. Spring’in sunduğu birçok imkanı, özellikle bağımlılık yönetimini ve yapılandırmayı minimal seviyeye indirir. Spring Boot ile projelerinizde çok fazla konfigürasyon yapmanıza gerek kalmaz, çünkü Spring Boot “önyargılı” (opinionated) bir yapı sunar. Bu sayede işiniz gerçekten çok kolaylaşır.
Spring Boot kurmak için birkaç basit adımı takip etmeniz yeterli. Hazırsanız başlayalım!
# Adım 1: Java JDK Kurulumu
Spring Boot, Java ile çalıştığı için ilk olarak Java Development Kit (JDK) kurmanız gerekiyor. JDK’yı [Oracle’ın resmi sitesinden](https://www.oracle.com/java/technologies/javase-jdk11-downloads.html) veya [OpenJDK](https://adoptopenjdk.net/) üzerinden indirebilirsiniz. Kurulum sonrasında, terminal veya komut istemcisinde aşağıdaki komutla Java sürümünüzü kontrol edin:
java -version
# Adım 2: Spring Initializr ile Proje Oluşturma
Spring Boot projesi oluşturmak için en hızlı ve kolay yol, [Spring Initializr](https://start.spring.io/) kullanmaktır. Spring Initializr, gerekli tüm bağımlılıkları ve yapılandırmaları sizin yerinize hazırlar. Burada birkaç temel seçim yapmanız yeterli olacak:
- Java sürümü
- Spring Boot versiyonu
- Bağımlılıklar (JPA, Web, Thymeleaf vb.)
Yaptığınız seçimlere göre, bir ZIP dosyası indirilecek ve bu dosyayı açarak projeyi bilgisayarınıza alabilirsiniz.
# Adım 3: IDE’ye Projeyi Açmak
Projeyi bilgisayarınıza indirdikten sonra, bir IDE (Integrated Development Environment) kullanarak açmanız gerekiyor. IntelliJ IDEA, Eclipse veya Visual Studio Code gibi popüler Java IDE’lerinden birini tercih edebilirsiniz. Projenizi IDE’de açtığınızda, bağımlılıkların otomatik olarak yüklendiğini ve tüm yapılandırmanın hazır olduğunu göreceksiniz.
Şimdi, “merhaba dünya” uygulaması yaparak Spring Boot’un gücünü daha yakından tanıyalım. Bu adımda, basit bir REST API oluşturacağız.
# Adım 1: Ana Sınıfı (Main Class) Oluşturun
Spring Boot uygulamaları, `@SpringBootApplication` anotasyonu ile işaretlenmiş ana bir sınıf içerir. Bu sınıf, uygulamanın başlatılmasını sağlar. İşte bu sınıf:
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
# Adım 2: Basit Bir Controller Oluşturun
REST API için bir controller sınıfı ekleyelim. Bu sınıf, kullanıcıdan gelen istekleri yanıtlar. Aşağıdaki örnekte, bir HTTP GET isteğine yanıt olarak “Merhaba Dünya” mesajı döndüreceğiz:
package com.example.demo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "Merhaba Dünya!";
}
}
# Adım 3: Uygulamayı Çalıştırın
Uygulamanızı çalıştırmak için, ana sınıfınızın içinde bulunan `main` metodunu çalıştırabilirsiniz. Spring Boot, uygulamanızı başlatacak ve yerel sunucuda çalışmasını sağlayacaktır.
4. Spring Boot’un Temel Özellikleri
Spring Boot, sadece basit bir web uygulaması oluşturmakla kalmaz, aynı zamanda birçok kullanışlı özellik de sunar:
- Gömülü Sunucular: Tomcat veya Jetty gibi sunucuları bağımsız olarak çalıştırabilirsiniz.
- Bağımlılık Yönetimi: Maven veya Gradle ile bağımlılıklarınızı kolayca yönetebilirsiniz.
- Otomatik Yapılandırma: Spring Boot, projenizin gereksinimlerine göre otomatik olarak yapılandırma yapar.
- Gelişmiş Hata Yönetimi: Hatalar ve istisnalar için gelişmiş hata yönetimi araçları sunar.