Wednesday, 15 August 2018

Servlet Program 7: Session Handling

index.html
<!--
File Name : index.html
Author : N.Jayachandra
-->
<html>
    <head>
   <title> Login Page</title> 
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  
</head> 
<body> 
   <div>Session Handling Part </div>
<h1> Session Management using HttpSession  Thru Signin Signout Setup</h1> 
<a href="signup.html">SignIn</a> 
<a href="SignOutServlet">Signout</a>
<a href="WelcomeServlet">Welcome</a> 
<hr> 
</body> 
</html> 
--------------------------
Output
--------------------------
Session Handling Part

Session Management using HttpSession Thru Signin Signout Setup

SignIn Signout Welcome


--------------------------Output
-------------------------
Select your Option
Sign Up Sign Out Welcome Message



Signing Page is Here
Name:
Password:
-----------------------------------------------------------------------------------------------------------------------------
/*
File Name :LoginServlet.java
Program : Servlet  Page for Login Details

 */

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.servlet.*;
import javax.servlet.http.*;


/**
 *
 * Author N.Jayachandra
 */
public class LoginServlet extends HttpServlet {

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {
            out.println("<!DOCTYPE html>");
            out.println("<html>");
            out.println("<head>");
            out.println("<title> LoginServlet</title>");           
            out.println("</head>");
            out.println("<body>");
          
             response.setContentType("text/html"); 
       
        request.getRequestDispatcher("diffpaths.html").include(request, response); 
          Date curdate = new Date();
        String name=request.getParameter("name"); 
        String password=request.getParameter("password"); 
        HttpSession session=request.getSession();
         long stime=session.getCreationTime();
          // checking for ideal time
        
          long curtime=curdate.getTime();
          out.print("<br>");
          out.print("Session creation tme is : "+stime);
          out.print("<br>");
          out.print("current tme is : "+curtime);
          out.print("<br>");
        
         
        if(password.equals("111")){ 
        out.print("Hi  "+name + " ! you  are Signed Up  ");  out.print("<br>");
        HttpSession session1=request.getSession(); 
        out.print("session name is : "+session1);out.print("<br>");
             
        session1.setAttribute("name",name);
       //session.setMaxInactiveInterval(3);
        } 
        else{ 
            out.print("Sorry, username or password error!");  out.print("<br>");
            request.getRequestDispatcher("signup.html").include(request, response); 
        } 
       
       
            out.println("</body>");
            out.println("</html>");
              out.close();
        }
    }

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

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

   
    @Override
    public String getServletInfo() {
        return "Login Form is Here";
    }

}

****************************************************************************************

 /*
File Name : SignoutServlet.java
Program : Servlet Page for Signout Details.
 */

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 *
 * Author : N.Jayachandra
 */
public class SignOutServlet extends HttpServlet {

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {
          
            out.println("<!DOCTYPE html>");
            out.println("<html>");
            out.println("<head>");
            out.println("<title> SignOutServlet</title>");          
            out.println("</head>");
            out.println("<body>");
             response.setContentType("text/html");
          
            
            request.getRequestDispatcher("diffpaths.html").include(request, response);
            
            HttpSession session=request.getSession();
            //String sesnam=String..toString(session.getAttribute("name"));
           
            out.print("<br>");
            out.print("session  Name : "+session);out.print("<br>");
             if(session!=null){
                 out.print(session.getAttribute("name"));
            session.invalidate();
            
            out.print(" ! You are successfully logged out!");  out.print("<br>");
            
             }
             else
                 out.print("You have not logged in !");  out.print("<br>");
               
           
            out.println("</body>");
            out.println("</html>");
            out.close();
        }
    }

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

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

    /**
     * Returns a short description of the servlet.
          */
    @Override
    public String getServletInfo() {
        return "Signout ";
    }

}
==========================================================================
/*
 File Name: WelcomeServlet.java
Program : Servlet page for Welcome Details
 */

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 *
 * @Author N.Jayachandra
 */
public class WelcomeServlet extends HttpServlet {

   
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {
          
            out.println("<!DOCTYPE html>");
            out.println("<html>");
            out.println("<head>");
            out.println("<title> WelcomeServlet</title>");           
            out.println("</head>");
            out.println("<body>");
          
          response.setContentType("text/html"); 
          Date curdate=new Date();
       
        request.getRequestDispatcher("diffpaths.html").include(request, response); 
         
        HttpSession session=request.getSession(false);
        out.print("<br>");
        out.print("session Name is :" +session);
        if(session!=null){ 
             long stime=session.getCreationTime();
        long curtime=curdate.getTime();
        out.print("<br>");
        out.print("Session creation tme is : "+stime);out.print("<br>");
          out.print("current tme is : "+curtime);out.print("<br>");
        out.print(session+" is session name: ");out.print("<br>");
        String name=(String)session.getAttribute("name"); 
        out.print("Hai fella  "+name+" !  Welcome to My Shop");  out.print("<br>");
          if(curtime>(stime+10000))
       { out.print(name+" ! Your session is over");out.print("<br>");
       session.invalidate();
        request.getRequestDispatcher("signup.html").include(request, response);  }
        
        } 
        else{ 
            out.print("Please login first");  out.print("<br>");
            request.getRequestDispatcher("signup.html").include(request, response); 
        } 
        out.close();  
        }
    }

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

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

    /**
     * Returns a short description of the servlet.
     **/
    @Override
    public String getServletInfo() {
        return "Welcome Page is here";
    }

}
__________________________________________________________________________________