Java'da Servlet Programı: Yeni Başlayanlar İçin Servlet Eğitimi [2022]
Yayınlanan: 2021-01-02İçindekiler
Java Sunucu Uygulaması
Java Programlama dili sınıfıdır. Java'daki Servlet programı, Java etkin web uygulaması veya sunucusunda çalıştırılır ve web sunucusundan alınan istekleri işlemek, isteğe yanıt işlemek ve üretmek ve ardından yanıtı web sunucusuna geri göndermek için kullanılır.
Bu sunucu uygulamaları sunucu tarafında çalışır. Programlamada istek-yanıt modellerini barındırmak için uygulamaları barındırmak için sunucu yeteneklerini genişletmek için kullanılır. Her tür talebi işleyebilir ve karmaşık talepleri verimli bir şekilde işleyebilir.
Okuyun: Java Mülakat Soruları ve Cevapları
Java kullanılarak kullanılan Servlet programları platforma bağlı değildir. Aldığı istemci isteğinin türüne göre süreçler oluşturur. JVM ( Java Virtual Machine ) üzerinde çalışır. Java Servlet programı Java Bytecode ile uyumludur. Java Servlet saldırılara direnebilir. Diğer avantajlar arasında daha hızlı hız, taşınabilirlik ve verimlilik sayılabilir.
Komut dosyalarını işlemeden önce çevirir ve derler. Java Servlet veri paylaşımını sağlar. Doğrudan web sunucusuyla iletişim kurabilir ve çerezleri işleyebilir. CGI ( Common Gateway Interface ) gibi diğer yöntemlerden daha ucuzdur.
Java Servlet Mimarisi
Java Servlet Mimarisi, bir iletişim arayüzü, istemci ve sunucu gereksinimleri, kullanılan protokol ve ilgili programlama dili ve yazılımı içerir.

Java sunucu uygulaması, HTML (Köprü Metni İşaretleme Dili), özel HTTP (Köprü Metni Aktarım Protokolü) programı, bir uygulama veya örtük HTTP istek verileri gibi herhangi bir biçimde olabilen istemci tarayıcısından alınan verileri okur. Daha sonra mevcut bir veri tabanı ile iletişim kurarak alınan verileri işler ve sonuçları üretmeden önce diğer adımları gerçekleştirir.
Bu sonuç (veri veya belge), istemcilere metin (HTML veya XML (Genişletilebilir İşaretleme Dili)), resim (ikili) gibi çeşitli biçimlerde gönderilir. Sonunda, istemciye döndürülen belgenin türünü bildirmek için örtük bir HTTP yanıtı gönderir.
Java Servlet Yaşam Döngüsünün Aşamaları
Java Servlet, Servlet'i yükleme, Servlet'i başlatma, bir isteği işleme ve Servlet'i yok etmeyi içeren dört aşamadan oluşan bir yaşam döngüsüne sahiptir. Servlet kapsayıcısı, web sunucusu başlatılırken alınan tüm sunucu uygulamalarını dağıtır ve yükler.
int() yöntemini çağırarak sunucu uygulamasını başlatır . Servlet örneği başarılı örneklemesi ve hizmet göstergesi, Servlet.init() yöntemi çağrılarak belirtilir. İstemcinin isteği Servlet tarafından service() yöntemi kullanılarak işlenir. İstemci isteği bu yöntem kullanılarak Servlet'e bildirilir.
Son olarak, oluşturulan bu Servlet , Servlet örneğinin sonunun bir sinyali olarak destroy() çağrılarak sonlandırılır . int() ve destroy() yöntemleri, bir Java Servlet'in ömrü boyunca bir kez çağrılır. Son olarak, JVM çöp toplayıcı sunucu uygulaması çöpünü toplar ve bir sunucu uygulamasının yaşam döngüsünü tamamlar.
Ayrıca Okuyun: Java Mimarisi ve Bileşenleri Açıklaması
Java Servletlerinin Yürütme Adımları
Servlet'ler, aşağıda verilen altı temel adım kullanılarak yürütülür:
- İstemci, isteği web uygulamasına/sunucusuna gönderir.
- Web uygulaması/sunucusu isteği alır.
- Web uygulaması/sunucu, isteği uygun sunucu uygulamasına gönderir.
- Sunucu uygulaması, isteği yaşam döngüsü boyunca işler ve çıktı olarak bir yanıt üretir.
- Sunucu uygulaması, yanıtı web uygulamasına/sunucusuna geri gönderir.
- Son olarak, web uygulaması/sunucu bu isteği istemciye geri gönderir ve istemcinin tarayıcısı bunu web sayfasında görüntüler.
Dünyanın En İyi Üniversitelerinden Online Yazılım Geliştirme Kurslarına Kaydolun . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.
Java Servlet Sınıfları ve Arayüzleri
Java Servlet dinamik web sayfaları oluşturabilmesine rağmen, bu özellik web sayfalarına bir kapsayıcı veya web sunucusu tarafından sağlanır. Bağımsız web sunucusu sağlayıcıları, bu gereksinimi karşılamak için API'ler (Uygulama Programlama Arayüzü) gibi tescilli çözümler sunar.
Bu API'leri kullanarak, bir web sunucusuyla programlar oluşturup çalıştırabilirsiniz. Java Servlet, Java'da oluşturulan dinamik web uygulamalarında standartları belirleyen bileşen API'lerinden biri olan Java Platform Enterprise Edition'dır.

Java Servlet API'si, tüm önemli arayüzleri ve sınıfları aşağıda belirtildiği gibi kapsüllemek için iki önemli pakete sahiptir:

- javax.servlet (Temel)
- Javax.servlet.http (Gelişmiş)
Aşağıdaki tablo, Java Servlet'in birkaç önemli sınıfını ve arabirimini içerir.
servlet | Tip | paket | Sunucu uygulamasının Yaşam Döngüsü yöntemlerinin beyanı |
ServletConfig | Arayüz | javax.servlet | Başlatma yöntemleri için sunucu uygulamasına izin verir |
ServletContext | Sınıf | javax.servlet | Erişim ve erişim bilgilerinin günlüğe kaydedilmesi için sunucu uygulamasını etkinleştirir. |
ServletRequest | Arayüz | javax.servlet | İstemci isteğindeki verileri okumak için kullanılır |
ServletResponse | Arayüz | javax.servlet | Verileri müşterinin yanıtına yazmak için kullanılır |
GenelServlet | Sınıf | javax.servlet | Servlet ve Servlet.config Arayüzünü uygular |
ServletInputStream | Sınıf | javax.servlet | İstemciden alınan istekleri okumak için giriş akışını sağlar. |
ServletOutputStream | Sınıf | javax.servlet | İstemciye yanıtlar yazmak için bir çıktı akışı sağlar |
ServletException | Sınıf | javax.servlet | Sunucu uygulamasının kullanılamamasının göstergesi |
HttpServlet | Arayüz | javax.servlet.http | HTTP İstek ve Yanıtını işleme yöntemleri |
Servlet Konteyneri
Java Servlet bileşenlerine çalışma zamanı ortamı sağlayan tümleşik bir nesneler kümesidir. Ağ, kod çözme ve MIME ( Çok Amaçlı İnternet Posta Uzantıları ) tabanlı mesajları kodlama, Servlet kapsayıcı yönetimi, kaynak ve oturum yönetimi ve güvenlik hizmetleri gibi hizmetler sunar.
Mutlaka Okuyun: İlginç Java Projeleri ve Konuları
Çözüm
Bu nedenle, Java Servlet'leri, web sunucusunda istemci isteklerini işlerken, artan hız ve esneklik ile birlikte dinamik web sayfaları elde etmek için kullanılır.
Java, OOP'ler ve tam yığın yazılım geliştirme hakkında daha fazla bilgi edinmek istiyorsanız, upGrad & IIIT-B'nin çalışan profesyoneller için tasarlanmış ve 500 saatten fazla sıkı eğitim sunan Tam Yığın Yazılım Geliştirmede Yönetici PG Programına göz atın. 9+ proje ve ödev, IIIT-B Mezun statüsü, pratik uygulamalı bitirme projeleri ve en iyi firmalarla iş yardımı.
Java nedir?
Bir programlama dili olarak Java, doğası gereği eşzamanlı, sınıf tabanlı ve nesne yönelimli olan genel amaçlı bir bilgisayar programlama dilidir. Java dilinin geliştirilmesinin amacı, uygulama kısıtlamalarını mümkün olduğu kadar en aza indirmektir. Bir Kez Yaz, Her Yerde Çalıştır (WORA) kavramı, Java programlama dilini yönetir; bu, kod bir kez oluşturulduktan sonra, bu kodun yeniden yazılmasına gerek kalmadan herhangi bir Java uyumlu platformda çalıştırılabileceği anlamına gelir. Java, web geliştirme, kurumsal sınıf uygulamalar, Android geliştirme ve Nesnelerin İnterneti (IoT) için kullanılan statik olarak yazılmış bir programlama dilidir.
Java Servlet'in ortak ağ geçidi arabirimlerine göre avantajları nelerdir?
Ortak Ağ Geçidi Arayüzü ile karşılaştırıldığında, Java Servlet'lerinin önemli avantajları (CGI) vardır. Servlet'in CGI'ye göre ilk ve en önemli avantajı, Servlet'in CGI'dan çok daha iyi performansa sahip olmasıdır. CGI'dan farklı olarak, her müşteri talebi için ayrı bir süreç oluşturmaya gerek yoktur. Servlet'ler yalnızca bir Web sunucusunun adres alanı içinde yürütülür. Servlet'ler Java'da oluşturulduğundan bağımsız platformlardır. Sunucudaki Java güvenlik yöneticisi, sunucunun kaynaklarını korumak için bir dizi kısıtlama getirir. Sonuç olarak, sunucu uygulamalarına güvenilebilir. Bir sunucu uygulamasının Java sınıfı kitaplıklarının tüm özelliklerine erişimi vardır, oysa CGI'ların tüm kitaplıklara erişimi yoktur.
Servlet'lerin gerçek hayatta kullanım durumları nelerdir?
Servlet'ler çoğunlukla HTML ve HTTP'de kullanılır. Tarayıcılar tarafından açıkça gönderilen verileri okumak için kullanılırlar. Bu, bir Web sayfasında, bir uygulamada veya ısmarlama bir HTTP istemci yazılımında bir HTML formu biçiminde olabilir. Ayrıca tarayıcıların örtük HTTP istek verilerine de erişebilirler. Bu, diğer şeylerin yanı sıra tarayıcı tarafından desteklenen çerezleri, medya türlerini ve sıkıştırma algoritmalarını içerir. Verileri işleyen ve bulguları ortaya çıkaran onlar. Bu prosedürde bir veritabanıyla konuşmak, bir RMI veya CORBA araması yapmak, bir Web servisiyle iletişim kurmak veya yanıtı doğrudan hesaplamak gerekebilir. Ayrıca, belgeler gibi açık verileri tarayıcılara iletmek için kullanılırlar. Bu belge, metin, ikili, resimler, Excel vb. dahil olmak üzere birkaç farklı biçimde teslim edilebilir.