Servlet Ders07 - ServletContext


   ServletContext nesnesi web container tarafından her proje için bir tane oluşturulur.ServletConfigte olduğu gibi yine başlangıç parametrelerini almak için kullanılır.ServletConfigten farkı servlete özel olmamasıdır.

 Ön Bilgi
//servletcontext nesnesi oluşturma
ServletContext context=getServletContext();

//servletcontext nesnesi ile başlangıç parametresini alma
String x=context.getInitParameter("x");

Servlet.java
package test;

import java.io.IOException;
import java.io.PrintWriter;


import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class Servlet extends HttpServlet {
 private static final long serialVersionUID = 1L;

 protected void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  
  response.setContentType("text/html");
  PrintWriter out=response.getWriter();
  ServletContext context=getServletContext();
  String adDegeri=context.getInitParameter("ad");
  
  out.println("Baslangic parametresi -> ad <br/>");
  out.println("Degeri                -> "+adDegeri);
  out.println("<br/> <a href='Servlet2'><h2>Servlet2'ye git</h2><a>");
  
 }

 protected void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  doGet(request, response);
 }

}

Servlet2.java
package test;

import java.io.IOException;
import java.io.PrintWriter;


import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class Servlet2 extends HttpServlet {
 private static final long serialVersionUID = 1L;

 protected void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  
  response.setContentType("text/html");
  PrintWriter out=response.getWriter();
  ServletContext context=getServletContext();
  String adDegeri=context.getInitParameter("ad");
  
  out.println("Baslangic parametresi -> ad <br/>");
  out.println("Degeri                -> "+adDegeri);
 
  out.println("<br/> <a href='Servlet'><h2>Servlet'e git</h2><a>");
 }

 protected void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  doGet(request, response);
 }

}

web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>Servlet06</display-name>

  
  <servlet>
      <servlet-name>Servlet</servlet-name>
      <servlet-class>test.Servlet</servlet-class>  
  </servlet>

  <servlet>
      <servlet-name>Servlet2</servlet-name>
      <servlet-class>test.Servlet2</servlet-class>  
  </servlet>
 
 
 <context-param>  
      <param-name>ad</param-name>  
      <param-value>enes</param-value>  
 </context-param> 
 

<servlet-mapping>
   <servlet-name>Servlet</servlet-name>
   <url-pattern>/Servlet</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>Servlet2</servlet-name>
    <url-pattern>/Servlet2</url-pattern>
</servlet-mapping>
  
</web-app>

Açıklamalar
@WebServlet("/Servlet")
//Bu Servlet urlsinin /Servlet olacağını belirtir.

response.setContentType("text/html");
//response içerik tipinin text/html türünde olduğunu belirtir 

PrintWriter out=response.getWriter();
//out nesnesi server tarafından çıktı üretilmek için oluşturulur.

//servletcontext nesnesi oluşturur.
ServletContext context=getServletContext();

//servletcontext nesnesi ile başlangıç parametresini alır.
String x=context.getInitParameter("x");

Servlet ServletContext projesi

Servlet ServletContext projesi

Yorumlar

Bu blogdaki popüler yayınlar

Java SE Ders24 - Composition (Kompozisyon)

Spring Ders20 - Aspect Oriented Programming - AspectJ Annotation Style

JSF Ders30 - Page Template (Sayfa Şablonu)