التخطي إلى المحتوى الرئيسي

JDBC using JSP and Servlet

JDBC means Java Database Connectivity ,It is intermediates from Application to database.

JDBC has different type of divers and provides to communicate from database server.

JDBC contain four different type of approach to communicate with Database

Type 1:-

JDBC-ODBC Driver

Type2:-

JDBC Vendor specific

Type3 :-

JDBC Network Specific

Type4:-

JDBC Client-Server based Driver  or JAVA thin driver:-

Mostly we prefer Type 4 type of Driver to communicate with database server.
Step for JDBC:-
1  Create Database using MYSQL ,ORACLE ,MS-SQL or any other database
2   Create Table using database server
3   Create Form according to database table
4  Submit Form and get form data into servlet
5  write JDBC Code:-
    5.1)   import package    import java.sql.*
    5.2)  Add JDBC Driver according to database ide tools
    5.3)  call driver in program
            Class.forName("com.mysql.jdbc.Driver");
   5.4)  Manage Connection String
           Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/databsename","root","");
  5.5)   Manage Statement to write SQL Query
         Statement ref = con.createStatement()
 5.6)  Execute SQL Query  IF perform Insert,update or delete
         int var = ref.executeUpdate("SQL QUERY");
5.7 )  Execute SQL Query if perform Select Operation
        ResultSet res = ref.executeQuery("Select Query");
       display record of Select
       while(res.next())
       {
             out.print(res.getInteger(1)+ " "+res.getString(2));
       }     
       
....................................................................................................................................

Create Registration Form Using JSP And Servelet:-
Code of Register.jsp page:-
<%--
    Document   : RegisterForm
    Created on : Oct 14, 2019, 10:16:53 AM
    Author     : DELL
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <form action="RegSer" method="post">
              <p>Enter emailid</p>
            <p><input type="email" name="txtemail" required=""  /> </p>
            <p>Enter password</p>
            <p><input type="password" name="txtpass" required=""  /> </p>
            <p>Enter mobileno</p>
            <p><input type="number" name="txtmobile"  required="" /> </p>
            <p>Enter fullname</p>
            <p><input type="text" name="txtfname" required="" /> </p>
            <p><input type="submit" name="btnsubmit" value="Click" /></p>
             
        </form>
    </body>
</html>
Code of Servlet :-
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.*;

/**
 *
 * @author DELL
 */
public class RegSer extends HttpServlet {
       protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        try  {
            String email = request.getParameter("txtemail");
            String pass = request.getParameter("txtpass");
            String mobile = request.getParameter("txtmobile");
            String fname = request.getParameter("txtfname");
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/javadb","root","");
            Statement st = con.createStatement();
            int res = st.executeUpdate("INSERT INTO `reg` (`email`, `password`, `mobile`, `fullname`) VALUES ('"+email+"', '"+pass+"', '"+mobile+"', '"+fname+"')");
            if(res!=0)
            {
                out.print("data inserted successfully");
            }          
               }
        catch(Exception ex)
        {
            out.print(ex.getMessage().toString());
        }
    }

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /**
     * Handles the HTTP <code>GET</code> method.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    /**
     * Handles the HTTP <code>POST</code> method.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }
    /**
     * Returns a short description of the servlet.
     *
     * @return a String containing servlet description
     */
    @Override
    public String getServletInfo() {
        return "Short description";
    }// </editor-fold>
}
Program code for Login.jsp:-
<%--
    Document   : Login
    Created on : Oct 15, 2019, 9:55:12 AM
    Author     : DELL
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
         <form action="LoginSer" method="post">
         
            <p>Enter emailid</p>
            <p><input type="email" name="txtemail" required=""  /> </p>
            <p>Enter password</p>
            <p><input type="password" name="txtpass" required=""  /> </p>
            <p><input type="submit" name="btnsubmit" value="Login" /> </p>
         </form>
         <%
          if(request.getParameter("q")!=null)
          {
              out.print(request.getParameter("q"));
          }           
           
          %>
          <br>
          <br>
        <a href="RegisterForm.jsp">New User Register Here</a>
    </body>
</html>
Program code for LoginSer 
 protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {
           String email = request.getParameter("txtemail");
           String pass = request.getParameter("txtpass");
           Class.forName("com.mysql.jdbc.Driver");
           Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/javadb","root","");
           Statement st = con.createStatement();
            ResultSet res = st.executeQuery("select * from  `reg`  where `email`='"+email+"' and  `password`='"+pass+"'");
           if(res.next())
            {
                HttpSession session=request.getSession();
                session.setAttribute("suid",email);
                response.sendRedirect("UserDashboard.jsp");
            }
           else
           {
               response.sendRedirect("Login.jsp?q="+"Invalid userid and password");
           }
        }
        catch(Exception ex)
        {
            
        }
    }
Create UserDashboard.jsp
<%-- 
    Document   : UserDashboard
    Created on : Oct 15, 2019, 10:00:09 AM
    Author     : DELL
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page  import="java.sql.*" %>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <a href="LogoutSer">Logout</a>
        <%
            if(session.getAttribute("suid")==null)
            {
                response.sendRedirect("Login.jsp");
            }
            
         %>   
        <h1>Welcome in <%=  session.getAttribute("suid")   %> In Dashboard</h1>
        
        <%
         String email= (String) session.getAttribute("suid");
         Class.forName("com.mysql.jdbc.Driver");
         Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/javadb","root","");
         Statement st = con.createStatement();
         ResultSet res = st.executeQuery("select * from reg where email='"+email+"'");
         if(res.next())
         {
         
        %>
        <p>Email Id is :  <%= res.getString(1)   %> </p>
        <p>Password Id is :  <%= res.getString(2)   %> </p>
        <p>Mobile no is :  <%= res.getString(3)   %> </p>
        <p>Fullname is :  <%= res.getString(4)   %> </p>
        
        <%
         }
         %>
    </body>
</html>
create LogoutSer.java:-
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {
           HttpSession session = request.getSession();
           session.removeAttribute("suid");
           response.sendRedirect("Login.jsp");
        }
    }

تعليقات

إرسال تعليق

POST Answer of Questions and ASK to Doubt

المشاركات الشائعة من هذه المدونة

Uncontrolled form input in React-JS

  Uncontrolled form input in React-JS? If we want to take input from users without any separate event handling then we can uncontrolled the data binding technique. The uncontrolled input is similar to the traditional HTML form inputs. The DOM itself handles the form data. Here, the HTML elements maintain their own state that will be updated when the input value changes. To write an uncontrolled component, you need to use a ref to get form values from the DOM. In other words, there is no need to write an event handler for every state update. You can use a ref to access the input field value of the form from the DOM. Example of Uncontrolled Form Input:- import React from "react" ; export class Info extends React . Component {     constructor ( props )     {         super ( props );         this . fun = this . fun . bind ( this ); //event method binding         this . input = React . createRef ();...

JSP Page design using Internal CSS

  JSP is used to design the user interface of an application, CSS is used to provide set of properties. Jsp provide proper page template to create user interface of dynamic web application. We can write CSS using three different ways 1)  inline CSS:-   we will write CSS tag under HTML elements <div style="width:200px; height:100px; background-color:green;"></div> 2)  Internal CSS:-  we will write CSS under <style> block. <style type="text/css"> #abc { width:200px;  height:100px;  background-color:green; } </style> <div id="abc"></div> 3) External CSS:-  we will write CSS to create a separate file and link it into HTML Web pages. create a separate file and named it style.css #abc { width:200px;  height:100px;  background-color:green; } go into Jsp page and link style.css <link href="style.css"  type="text/css" rel="stylesheet"   /> <div id="abc"> </div> Exam...