Hi i created one jsp form with 2 fields..now in the first servlet i want check whether those 2 fields values are presented in the Database or not..if not then i want move those values to another servlet .. how can i do this?how to get the values (parameter values of jsp in second servlet.. .ie; in first servlet those values will be comapred with database and bcoz of send redirect in else the values will be stored if they not present in DB here is my code plz check it once..
1st Servlet..
_____________

package com;
import java.io.*;
import java.util.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class SearchServlet extends HttpServlet
{

 private ServletConfig config;
  
  public void init(ServletConfig config)
    throws ServletException{
     this.config=config;
     }
  public void service(HttpServletRequest request, HttpServletResponse response) 
              throws ServletException,IOException{
      
    PrintWriter out = response.getWriter();
    String connectionURL = "jdbc:mysql://localhost/test";
    Connection connection=null;
    ResultSet rs;
  
    String mobileno=request.getParameter("mno");
    String password=request.getParameter("pwd");
    response.setContentType("text/html");
    HttpSession ses=request.getSession(true);
    
    try {
       // Load the database driver
      Class.forName("com.mysql.jdbc.Driver");
      // Get a Connection to the database
      connection = DriverManager.getConnection(connectionURL, "root", "password"); 
      //Add the data into the database
      String sql = "select mobileno,password from newuser where mobileno='"+ mobileno + "'and password='"+ password + "' " ;

   
      Statement s = connection.createStatement();
       rs=s.executeQuery (sql);
       rs = s.getResultSet();
     
      
     if(rs.next ())
     {
        mobileno=rs.getString("mobileno");
        password=rs.getString("password");
        out.println("MOBILENO=" +mobileno );
        out.println("PASSWORD=" +password );
    

         if(mobileno.equals(request.getParameter("mno")) && password.equals(request.getParameter("pwd")))
            {
       
          out.print("<h1>You are Already Registerd </h1>");
            }
         }

          else   
             {
                   request.setAttribute("MOBILENO",mobileno);
                   request.setAttribute("PASSWORD",password);
        RequestDispatcher dispatcher = 
             getServletConfig ( ) .getServletContext ().getRequestDispatcher("/LoginServlet");         
         dispatcher.forward (request, response) ; 

              }
         rs.close ();
        s.close ();

           

}
     catch(Exception e)
     {
      System.out.println("Exception is ;"+e);
      }

  
   } 

  }

2nd servlet
------------------

package com;
import java.io.*;
import java.util.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class LoginServlet extends HttpServlet{

  private ServletConfig config;
  
  public void init(ServletConfig config)
    throws ServletException{
     this.config=config;
     }
  public void doGet(HttpServletRequest request, HttpServletResponse response) 
              throws ServletException,IOException{
      
    PrintWriter out = response.getWriter();
    String connectionURL = "jdbc:mysql://localhost/test";
    Connection connection=null;
      String mno=null;
      String pwd=null;
     String mobileno = (String)request.getAttribute(MOBILENO); 
     String password = request.getAttribute(PASSWORD); 

    response.setContentType("text/html");
    try {
       // Load the database driver
      Class.forName("com.mysql.jdbc.Driver");
      // Get a Connection to the database
      connection = DriverManager.getConnection(connectionURL, "root", "password"); 
      //Add the data into the database
      String sql = "insert into  newuser values(" + mobileno  + ",'" + password  + "')";
      Statement s = connection.createStatement();
              
        HttpSession ses=request.getSession();
          int x = s.executeUpdate(sql);
        if(x==1)
        {
                out.println("<h1> Thanks For the Registration</h1>"); 
        out.println("<br><h1> Welcome to 3P Technologies</h1></br>"); 
        }
        else{
       out.println("<h1>+Your Registration is failed..Plase try again+</h1>");  
      out.println("<a href='newregister.jsp'><br>Register Here!!</a>");     
         } 
     s.close();
  
      }
      catch(Exception e){
      System.out.println("Exception is ;"+e);
      }
    }  
}

Recommended Answers

All 2 Replies

So where are you encountering a problem ??
We are not Psychics to know what output you are getting on your computer screen.

Tell us the problem in clear words and we will see what is going wrong.

Also in the first servlet:-

if(rs.next()) {
        mobileno=rs.getString("mobileno");
        password=rs.getString("password");

why do you simply want to get the mobile no. and password from the database when you know that the mobile no. and password that you have is correct (cause it has already been validated by your SQL query).

Hi i created one jsp form with 2 fields..now in the first servlet i want check whether those 2 fields values are presented in the Database or not..if not then i want move those values to another servlet .. how can i do this?how to get the values (parameter values of jsp in second servlet.. .ie; in first servlet those values will be comapred with database and bcoz of send redirect in else the values will be stored if they not present in DB here is my code plz check it once..

The very reason that you require to pass user submitted data from one servlet to another reeks of bad design. Seldom would you require two servlets in a single application. Just create a single controller servlet which is responsible for routing requests to proper request handlers.

IMO, what you require are multiple request handlers instead of multiple servlets. Also, you entire business logic is placed in the servlet which is pretty bad. Create two classes called LoginController and SearchController which would be instantiated by the servlet or the request handler.

You are actually spitting out HTML in your servlet which was pretty cool a few years back, but now isn't. Use JSP along with JSTL for presentation purposes. The J2EE 5 guide is a free download. Read and be enlightened.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.