JAKARTA SERVLETS: THE SERVLET LIFECYCLE AND HTTP METHODS EĞİTİMİ

Servlet yaşam döngüsünü ve HTTP metotlarını ustalıkla yönetin

init, service, destroy aşamaları, HttpServlet metotları, durum kodları, başlıklar ve eşzamanlı istek yönetimi.

Servlet Yaşam Döngüsü ve HTTP Metotları eğitimi: init, service, destroy aşamaları, HttpServlet metotları, durum kodları, başlıklar ve eşzamanlı istek yönetimi.

2 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Servlet yaşam döngüsü ve HTTP metot işleme

Eğitim, servlet container'ın bir servleti nasıl yüklediğini, örneklediğini ve yok ettiğini ele alır: init(), service(), destroy() çağrı sırası, load-on-startup, HttpServlet.service'in doGet/doPost/doPut/doDelete/doHead/doOptions metotlarına yönlendirmesi, idempotent ve güvenli metot kavramları, HttpServletResponse durum kodları, başlıklar, tek örnek çok iş parçacığı modeli ve thread-safety sorunları.

Süre ve Format

2 Gün. Her gün dört modül; Yaşam Döngüsü; HTTP Metotları ve Yanıt Yönetimi ekseninde ilerleyen uygulamalı program.

Seviye

Orta Seviye — init-service-destroy döngüsü, doGet/doPost/doPut/doDelete ve yanıt yönetimi

Öğrenme Metodu

Her yaşam döngüsü aşaması loglanarak izlenir; curl ve tarayıcı ile farklı HTTP metotları denenerek yanıtlar karşılaştırılır.

Neden Bu Eğitim?

🔄Yaşam döngüsü

Container'ın servleti ne zaman oluşturup yok ettiğini bilerek kaynakları doğru yönetirsiniz.

🌐HTTP doğruluğu

Metot semantiğine uygun, doğru durum kodlu uç noktalar yazarsınız.

🧵Eşzamanlılık

Tek servlet örneğinin çok iş parçacığıyla paylaşılması kaynaklı hataları önlersiniz.

Anahtar Konular

servlet lifecycleservlet yaşam döngüsüdoget doposthttpservlethttp metotlarıservlet init destroyjakarta servlettomcatservlet thread safety
“Metodun anlamına sadık kalan her servlet, istemciyle yapılmış sessiz bir sözleşmedir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Java bilgisi

Sınıf, arayüz, koleksiyon ve exception kavramlarında orta düzey Java.

2
HTTP temelleri

İstek/yanıt, durum kodları ve HTML form yapısına aşinalık.

3
JDK ve Maven

JDK 17+, Maven 3.9+ ve bir IDE kurulu ortam.

4
Tarayıcı araçları

Tarayıcı geliştirici araçları ve curl ile istek gönderebilme.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı servlet yaşam döngüsünün aşamalarını loglayarak gözlemler, init ve destroy içinde kaynak yönetimini doğru yapar.
Modül 1
Yükleme ve Başlatma
  • Sınıf yükleme, örnekleme ve init(ServletConfig) sırası
  • load-on-startup değerleri ve sıralama
  • Tembel (lazy) ve istekli (eager) başlatma
  • init içinde fırlatılan UnavailableException etkisi
  • Servlet tek örnek, çok iş parçacığı modeli
  • Container'ın servlet havuzu yaklaşımının SingleThreadModel ile terk edilmesi
Modül 2
service() Yönlendirmesi
  • HttpServlet.service(HttpServletRequest, HttpServletResponse) akışı
  • Metoda göre doXxx çağrısı ve 405 yanıtı
  • service() override etmenin riskleri
  • Filtre zinciri ile servlet çağrısı ilişkisi
  • RequestDispatcher forward ve include
  • Yaşam döngüsü logları ile sıra kanıtlama laboratuvarı
Modül 3
destroy() ve Kapanış
  • destroy() tetikleyen durumlar: undeploy, shutdown, reload
  • Açık bağlantı ve thread pool kapatma
  • Süren isteklerin tamamlanmasını bekleme
  • Tomcat stop ile graceful shutdown davranışı
  • Kaynak sızıntısı (leak) belirtileri
  • ServletContextListener ile destroy ilişkisi
Modül 4
Eşzamanlılık Sorunları
  • Örnek değişkeninde paylaşılan durum tuzağı
  • Yerel değişken ve request kapsamı güvenliği
  • synchronized, ReentrantLock ve atomik sınıflar
  • İki isteğin sayaç bozma gösterimi
  • Stateless servlet tasarımı ilkesi
  • JMeter ile paralel istek yükü uygulaması
Günün hedefiKatılımcı HTTP metotlarını semantiğine uygun işler, doğru durum kodları ve başlıklar ile yanıt üretir.
Modül 1
GET ve HEAD
  • doGet ve doHead ilişkisi
  • Güvenli ve idempotent metot tanımları
  • Sorgu dizesi ile kaynak seçimi
  • Cache-Control, ETag ve If-None-Match ile 304 yanıtı
  • getLastModified ile koşullu GET
  • Büyük yanıtlarda akış yazma
Modül 2
POST, PUT, DELETE
  • doPost ile kaynak oluşturma ve 201 Created, Location başlığı
  • doPut ve doDelete ile güncelleme/silme semantiği
  • İstek gövdesini getReader ve getInputStream ile okuma
  • Content-Type kontrolü ve 415 yanıtı
  • CSRF ve form kaynaklı POST riskleri
  • PUT/DELETE'in tarayıcı formlarından gönderilememesi ve çözümleri
Modül 3
Durum Kodları ve Başlıklar
  • setStatus ile sendError farkı
  • 200, 201, 204, 301/302, 400, 404, 405, 500 kodlarının seçimi
  • Allow başlığı ve doOptions
  • CORS ön kontrol (preflight) yanıtı
  • Content-Type ve karakter kodlaması ayarı
  • Cookie ve özel başlık yazma
Modül 4
Uygulama: Mini REST Uç Noktası
  • Bellek içi ürün listesi için CRUD servlet
  • JSON çıktısı için Jackson kullanımı
  • Hatalı istekte standart hata gövdesi
  • curl ve Postman ile test senaryoları
  • doGet/doPost için JUnit ve Mockito testleri
  • Tomcat access log ile istek akışını izleme

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Yaşam döngüsü

init, service ve destroy çağrı sırasını bilir ve kaynakları bu aşamalara göre yönetirsiniz.

✅
load-on-startup

Servletlerin başlatma zamanını ve sırasını yapılandırırsınız.

✅
Metot yönlendirme

HttpServlet.service'in doXxx yönlendirmesini ve 405 davranışını açıklayabilirsiniz.

✅
İdempotentlik

Güvenli ve idempotent metotları doğru uç noktalara uygularsınız.

✅
Durum kodları

setStatus, sendError ve başlıklarla doğru HTTP yanıtı üretirsiniz.

✅
Koşullu GET

ETag ve Last-Modified ile 304 yanıtı veren servlet yazarsınız.

✅
Thread-safety

Paylaşılan durumdan doğan yarış koşullarını tespit edip giderirsiniz.

✅
Test

Servlet metotlarını Mockito ve curl ile test edersiniz.

Kimler İçin Uygundur?

  • Java ile web uygulaması geliştiren backend geliştiricileri
  • Spring/Jakarta EE'ye geçmeden önce Servlet temelini sağlamlaştırmak isteyen yazılımcılar
  • Tomcat üzerinde çalışan eski uygulamaları sürdüren ekipler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Java ile web uygulaması geliştiren backend geliştiricileri, Spring/Jakarta EE'ye geçmeden önce Servlet temelini sağlamlaştırmak isteyen yazılımcılar ve Tomcat üzerinde çalışan eski uygulamaları sürdüren ekipler için uygundur.
Servlet her istekte yeniden mi oluşturulur?
Hayır. Container genellikle servletten tek örnek oluşturur ve istekleri farklı iş parçacıklarıyla aynı örnek üzerinde çalıştırır; bu yüzden örnek değişkenleri dikkat gerektirir.
doPut ve doDelete tarayıcı formundan çalışır mı?
HTML formları yalnızca GET ve POST gönderir; eğitimde fetch/curl ile PUT-DELETE çağırma ve gizli alan (_method) yaklaşımı gösterilir.
Hangi Tomcat sürümü kullanılıyor?
Jakarta Servlet 6.0 ile uyumlu Tomcat 10.1 kullanılır.
Eğitim sonunda sertifika verilir mi?
Evet. Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir; sertifika DVA'ya aittir ve üçüncü taraf bir sınavın yerine geçmez.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Jakarta Servlets: The Servlet Lifecycle and HTTP Methods Eği Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Java ve JVMRed Hat JBoss Application Administration I Eğitimi
Yazılım Geliştirme Eğitimleri

Red Hat JBoss Application Administration I Eğitimi

4 günOrtaOnline / Yüz Yüze / Hibrit

JBoss uygulama yönetimi I eğitimi: EAP kurulumu, standalone.xml, jboss-cli, datasource, Elytron, RBAC, domain modu ve mod_cluster.

Detayları Gör →
Java ve JVMRed Hat JBoss Application Administration I with Exam Classroom Training Eğitimi
Yazılım Geliştirme Eğitimleri

Red Hat JBoss Application Administration I with Exam Classroom Training Eğitimi

5 günİleriOnline / Yüz Yüze / Hibrit

JBoss yönetimi ve sınav hazırlığı eğitimi: EAP standalone/domain, CLI, Elytron, kümeleme ve süre sınırlı uygulamalı deneme laboratuvarları.

Detayları Gör →
Java ve JVMREST API with Java: Java APIs with JSON, Maven, & Spring Eğitimi
Yazılım Geliştirme Eğitimleri

REST API with Java: Java APIs with JSON, Maven, & Spring Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Java ile REST API eğitimi: Maven, Jackson JSON, Spring MVC, REST tasarımı, RestClient ile API tüketimi ve WireMock testleri.

Detayları Gör →
Java ve JVMREST API with Java: REST APIs with POSTMAN & CRUD Eğitimi
Yazılım Geliştirme Eğitimleri

REST API with Java: REST APIs with POSTMAN & CRUD Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

REST API Postman ve CRUD eğitimi: HTTP metotları, durum kodları, Postman koleksiyonu ve testleri, Newman CI otomasyonu ve kimlik doğrulama.

Detayları Gör →
Java ve JVMREST API with Java: Spring Boot with Java Eğitimi
Yazılım Geliştirme Eğitimleri

REST API with Java: Spring Boot with Java Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

Spring Boot ile Java REST API geliştirme eğitimi: Initializr, RestController, DTO, doğrulama, hata yönetimi, Actuator ve MockMvc testleri.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn