logo

Servlet örneği oluşturma adımları

  1. Tomcat sunucusunu kullanarak servlet oluşturma adımları
    1. Bir dizin yapısı oluşturun
    2. Servlet Oluştur
    3. Servlet'i derleyin
    4. Dağıtım tanımlayıcısı oluşturma
    5. Sunucuyu başlatın ve uygulamayı dağıtın

Bir oluşturmak için 6 adım verilmiştir. sunucu uygulaması örneği . Bu adımlar tüm sunucular için gereklidir.

Servlet örneği üç yolla oluşturulabilir:

  1. Servlet arayüzünü uygulayarak,
  2. GenericServlet sınıfını miras alarak, (veya)
  3. HttpServlet sınıfını miras alarak

En çok kullanılan yaklaşım HttpServlet'i genişletmektir çünkü doGet(), doPost(), doHead() vb. gibi http isteğine özgü yöntemler sağlar.

Burada kullanacağız apache tomcat sunucusu bu örnekte. Adımlar aşağıdaki gibidir:

  1. Bir dizin yapısı oluşturun
  2. Servlet Oluştur
  3. Servlet'i derleyin
  4. Dağıtım tanımlayıcısı oluşturma
  5. Sunucuyu başlatın ve projeyi dağıtın
  6. Servlet'e erişme

bu servlet örneğini indir
GenericServlet'i genişleterek servlet örneğini indirin
Servlet arayüzünü uygulayarak servlet örneğini indirin

1) Bir dizin yapısı oluşturun

dizin yapısı Web taşıyıcısının bilgiyi alabilmesi ve istemciye yanıt verebilmesi için farklı türdeki dosyaların nereye yerleştirileceğini tanımlar.

Sun Microsystem, tüm sunucu satıcılarının uyması gereken benzersiz bir standart tanımlar. Servlet oluşturmak için izlenmesi gereken dizin yapısını görelim.

Gördüğünüz gibi servlet sınıf dosyasının sınıflar klasöründe olması gerekiyor. web.xml dosyası WEB-INF klasörü altında olmalıdır.


2) Bir Servlet oluşturun

Servlet oluşturmanın üç yolu vardır.
  1. Servlet arayüzünü uygulayarak
  2. GenericServlet sınıfını miras alarak
  3. HttpServlet sınıfını miras alarak
HttpServlet sınıfı, doGet(), doPost, doHead() vb. gibi http isteklerini işlemek için yöntemler sağladığından sunucu uygulamasını oluşturmak için yaygın olarak kullanılır.
Bu örnekte HttpServlet sınıfını genişleten bir servlet oluşturacağız. Bu örnekte HttpServlet sınıfını devralıyoruz ve doGet() yönteminin uygulanmasını sağlıyoruz. Alma isteğinin varsayılan istek olduğuna dikkat edin.

DemoServlet.java
 import javax.servlet.http.*; import javax.servlet.*; import java.io.*; public class DemoServlet extends HttpServlet{ public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException,IOException { res.setContentType('text/html');//setting the content type PrintWriter pw=res.getWriter();//get the stream to write the data //writing html in the stream pw.println(''); pw.println('Welcome to servlet'); pw.println(''); pw.close();//closing the stream }} 

3)Servlet'i derleyin

Servlet'in derlenmesi için jar dosyasının yüklenmesi gerekmektedir. Farklı Sunucular farklı jar dosyaları sağlar:

Kavanoz dosyasıSunucu
1) servlet-api.jarApaçi Tomcat
2) weblogic.jarWeb mantığı
3) javaee.jarCam balığı
4) javaee.jarJBoss

Jar dosyasını yüklemenin iki yolu

  1. sınıf yolunu ayarla
  2. jar dosyasını JRE/lib/ext klasörüne yapıştırın

Java dosyasını herhangi bir klasöre koyun. Java dosyasını derledikten sonra servlet'in sınıf dosyasını yapıştırın. WEB-INF/sınıflar dizin.


4)Dağıtım tanımlayıcısını oluşturun (web.xml dosyası)

dağıtım tanımlayıcısı Web Container'ın çağrılacak hizmetle ilgili bilgileri aldığı bir xml dosyasıdır.

Web kapsayıcısı, web.xml dosyasından bilgi almak için Ayrıştırıcıyı kullanır. SAX, DOM ve Pull gibi birçok xml ayrıştırıcısı vardır.

web.xml dosyasında birçok öğe vardır. Burada basit servlet programını çalıştırmak için gerekli bazı unsurlar verilmiştir.


web.xml dosyası
 sonoojaiswal DemoServlet sonoojaiswal /welcome 

web.xml dosyasının öğelerinin açıklaması

web.xml dosyasında çok fazla öğe var. Yukarıdaki web.xml dosyasında kullanılan bazı öğelerin çizimi burada verilmiştir. Unsurlar aşağıdaki gibidir:


uygulamanın tamamını temsil eder.
servlet'in alt öğesidir ve servlet'i temsil eder.
servlet'in adını temsil eden alt öğedir.
servlet'in sınıfını temsil eden alt öğesidir.
'nin alt öğesidir. Servlet'i haritalamak için kullanılır.
'nin alt öğesidir. Bu model istemci tarafında servlet'i çağırmak için kullanılır.

5)Sunucuyu başlatın ve projeyi dağıtın

Apache Tomcat sunucusunu başlatmak için apache-tomcat/bin dizini altındaki startup.bat dosyasına çift tıklayın.


Apache Tomcat Sunucusu için Tek Seferlik Yapılandırma

2 görevi gerçekleştirmeniz gerekir:

  1. Ortam değişkeninde JAVA_HOME veya JRE_HOME'u ayarlayın (Sunucuyu başlatmak için gereklidir).
  2. Tomcat'in bağlantı noktası numarasını değiştirin (isteğe bağlı). Aynı portta (8080) başka bir sunucu çalışıyorsa gereklidir.

1) Java_HOME ortam değişkeninde nasıl ayarlanır?

Apache Tomcat sunucusunu başlatmak için Ortam değişkenlerinde JAVA_HOME ve JRE_HOME ayarlanmalıdır.

Bilgisayarım özelliklerine gidin -> Gelişmiş sekmesine ve ardından ortam değişkenlerine tıklayın -> Kullanıcı değişkeninin yeni sekmesine tıklayın -> Değişken ismine JAVA_HOME yazın ve jdk klasörünün yolunu değişken değerine yapıştırın -> tamam -> tamam -> tamam .

Linux'u barındır

Bilgisayarım özelliklerine gidin:

Apache Tomcat 1'i yapılandırma

Gelişmiş sistem ayarları sekmesine ve ardından ortam değişkenlerine tıklayın:

Apache Tomcat 2'yi yapılandırma

Apache Tomcat 3'ü yapılandırma

rastgele sql'ye göre sırala

Kullanıcı değişkeninin veya sistem değişkeninin yeni sekmesine tıklayın:

Apache Tomcat 4'ü yapılandırma

Değişken ismine JAVA_HOME yazın ve jdk klasörünün yolunu değişken değerine yapıştırın:

Apache Tomcat 2'yi yapılandırma

Yolun sonunda noktalı virgül (;) olmamalıdır.


JAVA_HOME ayarını yaptıktan sonra Apache Tomcat/bin içindeki startup.bat dosyasına çift tıklayın.
Not: İki tür erkek kedi mevcuttur:
  1. Yalnızca ayıklaması gereken Apache Tomcat (kurmaya gerek yok)
  2. Kurulması gereken Apache Tomcat
Yalnızca çıkarılması gereken Apache Tomcat örneğidir.

servlet programı için Tomcat sunucusu nasıl başlatılır

servlet programı için Tomcat sunucusu nasıl başlatılır


Artık sunucu başarıyla başlatıldı.

2) Apache Tomcat'in port numarası nasıl değiştirilir?

Aynı sistemde aynı port numarasına sahip başka bir sunucu çalışıyorsa port numarasını değiştirmek gerekir. Diyelim ki oracle yüklediniz, apache tomcat'in port numarasını değiştirmeniz gerekiyor çünkü her ikisinin de varsayılan port numarası 8080.

Açık sunucu.xml dosyası not defterinde. İçinde bulunur apache-tomcat/conf dizin. Connector port = 8080 olarak değiştirelim ve 8080 yerine 8080 yerine dört haneli herhangi bir sayı yazalım. Bunu 9999 ile değiştirelim ve bu dosyayı kaydedelim.


5) Servlet projesi nasıl dağıtılır

Projeyi kopyalayın ve Apache Tomcat'in altındaki webapps klasörüne yapıştırın.

apache tomcat sunucusunda servlet nasıl dağıtılır

Ancak projeyi dağıtmanın birkaç yolu vardır. Bunlar aşağıdaki gibidir:

  • Bağlam (proje) klasörünü webapps dizinine kopyalayarak
  • War klasörünü webapps dizinine kopyalayarak
  • Sunucudan klasör yolunu seçerek
  • Sunucudan savaş dosyasını seçerek

Burada ilk yaklaşımı kullanıyoruz.

Ayrıca savaş dosyası oluşturabilir ve bunu webapps dizinine yapıştırabilirsiniz. Bunu yapmak için war dosyasını oluşturmak üzere jar aracını kullanmanız gerekir. Proje dizininin içine girin (WEB-INF'den önce), ardından şunu yazın:

 projectfolder> jar cvf myproject.war * 

Savaş dosyası oluşturmanın, projeyi bir yerden başka bir yere taşımanın daha az zaman alması gibi bir avantajı vardır.


6) Servlet'e nasıl erişilir?

Broser'ı açın ve http://hostname:portno/contextroot/urlpatternofservlet yazın. Örneğin:

 http://localhost:9999/demo/welcome 

servlet örneğinin çıktısı


bu servlet örneğini indirin (not defteri kullanarak)
GenericServlet'i genişleterek servlet örneğini indirin
Servlet arayüzünü uygulayarak servlet örneğini indirin