Servlet - Servlet

  • 1.  Servlet interface, Generic Servlet class, HttpServlet class
    <Solution
    					    						

    public interface Servlet
    {
    	public void init(ServletConfig sc);
    	public void destroy();
    	public void service(ServletRequest req,ServletResponse res)throws ServletException;
    	public ServletConfig getServletConfig ();
    	public ServletContext getServletContext();
    }
    ==================================================================================================================================================================================
    public abstract class GenericServlet implements Servlet
    {
    	public void init(ServletConfig sc)
    	{}
    	public void destroy()
    	{}	
    	public ServletConfig getServletConfig ()
    	{
    		return null;
    	}
    	public ServletContext getServletContext()
    	{
    		return null;
    	}
    }
    ==================================================================================================================================================================================
    public class HttpServlet extends GenericServlet
    {
    	public void service(ServletRequest req,ServletResponse res) throws ServletException
    	{
    		...
    		...
    	}
    	protected void service(HttpServletRequest req,HttpServletResponse res) throws ServletException
    	{
    		...
    		...
    	}
    	public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException
    	{}
    	public void doPost(HttpServletRequest req,HttpServletResponse res) throws ServletException
    	{}
    	public void doDelete(HttpServletRequest req,HttpServletResponse res) throws ServletException
    	{}
    	public void doPut(HttpServletRequest req,HttpServletResponse res) throws ServletException
    	{}
    }
    endAns
    How to create a servlet
    	define a public class
    	inherit class from Servlet interface (directly / indirectly)
    		Servlet interface ==> GenericServlet class ==> HttpServlet class
    	override / define required/useful methods
    =============================================================================================
    Method : 1 : inherit class from Servlet interface	
    =============================================================================================
    public class FirstServlet implements Servlet
    {
    	public void init(ServletConfig sc)
    	{
    		System.out.println("init");
    	}
    	public void destroy()
    	{
    		System.out.println("destroy");		
    	}
    	public void service(ServletRequest req,ServletResponse res)throws ServletException
    	{
    		System.out.println("service");
    	}
    	public ServletConfig getServletConfig ()
    	{
    		System.out.println("getServletConfig");
    		return null;
    	}
    	public ServletContext getServletContext()
    	{
    		System.out.println("getServletContext");
    		return null;
    	}
    }
    =============================================================================================	
    Method : 2 : inherit class from GenericServlet class
    =============================================================================================	
    public class FirstServlet extends GenericServlet
    {
    	public void service(ServletRequest req,ServletResponse res)throws ServletException
    	{
    		System.out.println("service");
    	}
    }
    =============================================================================================	
    Method : 3 : inherit class from HttpServlet class
    =============================================================================================	
    public class FirstServlet extends HttpServlet
    {
    	
    }
    =============================================================================================	
    endAns
    1.  open apache tomcat folder
    	    in webapps create a new folder (myapp)
    		    in myapp create a new folder (WEB-INF)
    			    in WEB-INF create a new folder (classes)
    			    
        apache tomcat ==> webapps ==> website_name(myapp) ==> WEB-INF ==> classes
    	
    2.  define a servlet class
    
    3.  compile a servlet class and paste class file into classes folder
    
    4.  create one xml file : web.xml in WEB-INF : mapper file : url ==> servlet
    	
    	
    		
    			a
    			firstservlet
    		
    		
    			a
    			/text
    		
    	
    5. 	
    	start server
    		apache-tomcat ==> bin ==> startup.bat
    		
    6.
    	open browser ==> make a request
    endAns