Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.acebook;
- import java.io.IOException;
- import java.io.PrintWriter;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- import javax.servlet.ServletConfig;
- import javax.servlet.ServletException;
- import javax.servlet.UnavailableException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import javax.servlet.http.HttpSession;
- public class LoginServlet extends HttpServlet {
- public void init(ServletConfig config) throws ServletException {
- super.init(config);
- }
- public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
- // Set as HTML, send <head>
- response.setContentType("text/html");
- PrintWriter out = response.getWriter();
- out.println("<html>");
- out.println("<head>");
- out.println("<title>Login</title>");
- out.println("</head>");
- out.println("<body>");
- // Create session and connection
- HttpSession session = request.getSession();
- Connection connection;
- // Populate connection
- try {
- connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/Acebook", "root", "90187666");
- } catch (SQLException ex) {
- connection = null;
- connection = (Connection) session.getAttribute("connection");
- Logger.getLogger(LoginServlet.class.getName()).log(Level.SEVERE, null, ex);
- }
- // Connection success?
- if (connection != null) {
- // Get input
- // @todo: Validate input?
- String userName = request.getParameter("username");
- String password = request.getParameter("password");
- session.setAttribute("connection", connection);
- // If we're logging out, do something different (later)
- String logout = request.getParameter("logout");
- if (logout == null) {
- // Attempt to run query for user info
- Statement statement = null;
- ResultSet resultSet = null;
- try {
- // Prepare query
- // @todo: Add in a clause for password
- String query = "
- SELECT *
- FROM acebookmembers
- WHERE Email = '" + userName + "'
- AND Password != ''
- ";
- // Run query
- statement = connection.createStatement();
- resultSet = statement.executeQuery(query);
- if (resultSet.next()) {
- userName = resultSet.toString();
- }
- // Error running query?
- } catch (SQLException e) {
- out.println("Login doGet() SQLException: " + e.getMessage()
- + "<p>");
- } finally {
- if (resultSet != null) {
- try {
- resultSet.close();
- } catch (SQLException ignore) {
- }
- }
- if (statement != null) {
- try {
- statement.close();
- } catch (SQLException ignore) {
- }
- }
- }
- // Query run, output results
- out.println("<p>Hello " + userName + "!</p>");
- out.println("<p>Your session ID is " + session.getId() + "</p>");
- out.println("<p>It was created on " + new java.util.Date(session.getCreationTime()) + "</p>");
- out.println("<p>It was last accessed on " + new java.util.Date(session.getLastAccessedTime()) + "</p>");
- out.println("<form method='get' action='Login'>");
- out.println("<input type='submit' name='logout' value='Logout' />");
- out.println("</form>");
- } else {
- // User wants to log out
- // @todo: Close the connection and remove it from the session (is this done?)
- try {
- connection.close();
- }
- catch (SQLException ignore) { }
- session.removeAttribute("connection");
- out.println("You have been logged out.");
- }
- } else {
- // Connection failed
- // @todo: Do something here
- }
- out.println("</body>");
- out.println("</html>");
- }
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws IOException, ServletException {
- doGet(request, response);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement