OneCompiler

servet

125

--------------------------------RegisterServlet.java

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
//import java.io.IOException;
//import javax.servlet.ServletException;
//import javax.servlet.annotation.WebServlet;
//import javax.servlet.http.HttpServlet;
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;

@WebServlet("/RegisterServlet")
public class RegisterServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    String consumerId = request.getParameter("consumerId");
    String billNumber = request.getParameter("billNumber");
    String title = request.getParameter("title");
    String name = request.getParameter("name");
    String email = request.getParameter("email");
    String countryCode = request.getParameter("countryCode");
    String mobile = request.getParameter("mobile");
    String userId = request.getParameter("userId");
    String password = request.getParameter("password");
    try {
		Class.forName("org.sqlite.JDBC");
	} catch (ClassNotFoundException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
    try (Connection con = DBUtil.getConnection()) {
        String sql = "INSERT INTO Consumers (ConsumerID, BillNumber, Title, Name, Email, Mobile, UserID, Password) VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
        PreparedStatement ps = con.prepareStatement(sql);
        ps.setString(1, consumerId);
        ps.setString(2, billNumber);
        ps.setString(3, title);
        ps.setString(4, name);
        ps.setString(5, email);
        ps.setString(6, countryCode + mobile);
        ps.setString(7, userId);
        ps.setString(8, password);
        ps.executeUpdate();

        request.setAttribute("message", "Consumer Registration successful.");
        request.setAttribute("consumerId", consumerId);
        request.setAttribute("email", email);
        request.setAttribute("customerName", name);
        request.getRequestDispatcher("acknowledgment.jsp").forward(request, response);

}

    catch (Exception e) {
        e.printStackTrace();
        response.getWriter().println("Error: " + e.getMessage());
    }



   
}

}

------------------------------------------LoginServlet.java

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    String userId = request.getParameter("userId");
    String password = request.getParameter("password");
    
    try {
		Class.forName("org.sqlite.JDBC");
	} catch (ClassNotFoundException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}

    try (Connection con = DBUtil.getConnection()) {
        String sql = "SELECT * FROM Consumers WHERE UserID = ? AND Password = ?";
        PreparedStatement ps = con.prepareStatement(sql);
        ps.setString(1, userId);
        ps.setString(2, password);
        ResultSet rs = ps.executeQuery();

        if (rs.next()) {
            // Login successful
        	String customerName = rs.getString("Name");
            request.getSession().setAttribute("Name", customerName);
            response.sendRedirect("home.jsp");
        } else {
            // Login failed
        	request.setAttribute("errorMessage", "Invalid credentials. Please try again.");
        	request.getRequestDispatcher("login.jsp").forward(request, response);

        }
    } catch (Exception e) {
        e.printStackTrace();
        response.getWriter().println("Error: " + e.getMessage());
    }
}

}

------------------------------------------DBUtil.java

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DBUtil {

private static final String DB_URL = "jdbc:sqlite:C://Users//sahil//Desktop//sqlite//mydatabase.db";

public static Connection getConnection() throws SQLException {
    return DriverManager.getConnection(DB_URL);
}

}