Showing posts with label MySQL. Show all posts
Showing posts with label MySQL. Show all posts

Struts Login Form Example Eclipse MySql Apache Tomcat

Struts Login Example

Struts 1.3 Java Eclipse MySql Apache Tomcat

Project Screenshot:



Project Explorer:



Source code:

struts-config.xml 
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
          "http://struts.apache.org/dtds/struts-config_1_3.dtd">

<struts-config>

    <!-- Form Beans -->
    <form-beans>
        
        <form-bean name="loginForm" type="com.loginexample.forms.LoginForm"/>

    </form-beans>

    <!-- Action Mappings -->
    <action-mappings>

     <action name="loginForm" path="/Login" type="com.loginexample.actions.LoginAction" scope="request" input="/Login.jsp">
         <forward name="failure" path="/Failure.jsp" redirect="true"/>
         <forward name="success" path="/Success.jsp" redirect="true"/>
     </action>

    </action-mappings>
    
    <!-- Message Source -->
     <message-resources parameter="com.loginexample.resources.Application"/>

</struts-config>

web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>StrutsLoginFormExample</display-name>
  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>
          /WEB-INF/struts-config.xml
       </param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>
Login.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@taglib prefix="html" uri="http://struts.apache.org/tags-html"%>
<%@taglib prefix="logic" uri="http://struts.apache.org/tags-logic"%>
<%@taglib prefix="bean" uri="http://struts.apache.org/tags-bean"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title><bean:message key="loginform.label.title"/></title>
</head>
<body>
<center>
<h1><bean:message key="loginform.label.title"/></h1>
<html:form action="/Login" focus="username">
<table>
<tr><td>
 <bean:message key="loginform.label.usernane"/>
 </td>
 <td>
   <html:text property="username"/>
  </td>
  <td>
  <logic:messagesPresent property="username">
   <html:messages id="error" property="username">
    <font color="red"><bean:write name="error"/></font>
   </html:messages>
  </logic:messagesPresent>
 </td></tr>
<tr><td>
  <bean:message key="loginform.label.password"/>
 </td>
 <td>
  <html:password property="paswd"/>
 </td>
 <td> 
 <logic:messagesPresent property="paswd">
  <html:messages id="error" property="paswd">
   <font color="red"><bean:write name="error"/></font>
  </html:messages>
 </logic:messagesPresent>
 </td></tr>
<tr><td></td>
  <td align="left">
 <html:submit value="Login"/>
 <html:reset value="Cancel"/>
 </td>
  <td>
 </td></tr>
</table>
</html:form>
</center>
</body>
</html>

Success.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Login Successful</title>
</head>
<body>
 <h1>Login Successful</h1>
</body>
</html>

Failure.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Login Failure</title>
</head>
<body>
 <h1 style="color: red;">Login Failure</h1>
</body>
</html>

LoginForm.java
package com.loginexample.forms;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;

public class LoginForm extends ActionForm {


 /**
  * nn
  */
 private static final long serialVersionUID = 1L;
 private String username = null;
 private String paswd = null;
 
 public String getUsername() {
  return username;
 }
 
 public void setUsername(String username) {
  this.username = username;
 }
 
 public String getpaswd() {
  return paswd;
 }
 
 public void setpaswd(String paswd) {
  this.paswd = paswd;
 }
 
 @Override
 public void reset(ActionMapping mapping, HttpServletRequest request) {
  this.paswd = null;
 }
 public ActionErrors validate(ActionMapping mapping,
   HttpServletRequest request) {
  ActionErrors errors = new ActionErrors();
  if(username==null || username.length()==0 || username.trim().equals(""))
  {
   ActionMessage message = new ActionMessage("loginform.username.empty");
   errors.add("username", message);
  }
  else if(!username.matches("^[a-zA-Z0-9 ]+$"))
  {
   errors.add("username", new ActionMessage("loginform.username.alphabets"));
  }
  else if(username.length()<3)
  {
   errors.add("username", new ActionMessage("loginform.username.length"));
   
  }
  if(paswd==null||paswd.length()==0||paswd.trim().equals(""))
  {
   errors.add("paswd", new ActionMessage("loginform.paswd"));
  }
  
 
 return errors;
 }
 

}


LoginAction,java
package com.loginexample.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.loginexample.forms.LoginForm;
import com.loginexample.services.LoginService;

public class LoginAction extends Action {
 @Override
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  LoginForm loginForm = (LoginForm)form;
  LoginService loginService= new LoginService();
  
  try
  {
   loginService.checkLogin(loginForm);
   return mapping.findForward("success");
  }
  catch (Exception e)
  {
   return mapping.findForward("failure");
  }
 
 }

}


LoginService.java
package com.loginexample.services;

import java.sql.SQLException;

import com.loginexample.dao.impl.LoginDaoImplementation;
import com.loginexample.exceptions.InvalidUserException;
import com.loginexample.forms.LoginForm;

public class LoginService {
 public boolean checkLogin(LoginForm loginForm) throws SQLException, InvalidUserException
 {
  LoginDaoImplementation loginDao= new LoginDaoImplementation();
  if(!loginDao.checkLogin(loginForm))
    throw new InvalidUserException("Incorrect Username/Password.");
  else
   return true;
 }

}


LoginDao.java
package com.loginexample.dao;

import java.sql.SQLException;

import com.loginexample.forms.LoginForm;

public interface LoginDao 
{
public boolean checkLogin(LoginForm loginForm) throws SQLException;
}


LoginDaoImplementation.java
package com.loginexample.dao.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.loginexample.dao.LoginDao;
import com.loginexample.forms.LoginForm;
import com.loginexample.utilities.DBUtilities;

public class LoginDaoImplementation implements LoginDao
{
 public boolean checkLogin(LoginForm loginForm) throws SQLException
 {
  Connection con=null;
  boolean access=false;
  
  try
  {
   con=DBUtilities.getConnection();
   
   String query= "select * from login where username=? and password=?";
   PreparedStatement stmt= con.prepareStatement(query);
   stmt.setString(1, loginForm.getUsername());
   stmt.setString(2, loginForm.getpaswd());
   ResultSet rs= stmt.executeQuery();
   
   if(rs.next())
   {
    access=true;
   }
  
   
  }
  finally
  {
   DBUtilities.closeConnection(con);
  }
  return access;
 }
}



DBUtilities.java
package com.loginexample.utilities;

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

public class DBUtilities {
 
    public static Connection getConnection()
    {
     Connection con = null;
     
     try 
     {
    Class.forName("com.mysql.jdbc.Driver");
    con  =DriverManager.getConnection("jdbc:mysql://localhost:3306/nn","root","");
     } 
     catch (ClassNotFoundException e) 
     {
   // TODO Auto-generated catch block
      e.printStackTrace();
     } 
     catch (SQLException e) 
     {
   // TODO Auto-generated catch block
      e.printStackTrace();
     }
     
     return con; 
     
    }
 
     public static void closeConnection(Connection con){      
      if(con!=null){
       try{
       con.close();
       }catch(SQLException e){}
      }      
     }   
       public static void closePreparedStatement(PreparedStatement ps){      
      if(ps!=null){
       try{
       ps.close();
       }catch(SQLException e){}
      }
      
     }

}



InvalidUserException.java
package com.loginexample.exceptions;

public class InvalidUserException extends Exception
{

 /**
  * 
  */
 private static final long serialVersionUID = 1L;

 public InvalidUserException(String arg0) 
 {
  super(arg0);
 }
 

 
}


Application.properties
loginform.label.title=Login Form
loginform.label.usernane=Username : 
loginform.label.password=Password : 
loginform.username.empty=Please enter username
loginform.username.alphabets=Please enter alphabets only
loginform.username.length=Please enter username of length of at least 3 characters
loginform.paswd=Please enter password



Download:
StrutsLoginFormExample

Registration Form - Struts 1.3 Example - Eclipse - MySQL - Apache Tomcat

Simple Struts Example: Registration Form

Struts 1.3 - Java - MySQL- Eclipse - Apache Tomcat




Project Screenshots:




Project Explorer:



Source code:

struts-config.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
          "http://struts.apache.org/dtds/struts-config_1_3.dtd">

<struts-config>

    
    <form-beans>
        
  <form-bean name="registrationForm" type="com.loginexample.forms.RegistrationForm"/>

    </form-beans>

    
    <action-mappings>

     <action name="registrationForm" path="/register" type="com.loginexample.actions.RegistrationAction" scope="request" input="/Register.jsp">
         <forward name="failure" path="/Failure.jsp" redirect="true"/>
         <forward name="success" path="/Success.jsp" redirect="true"/>
     </action>

    </action-mappings>
     

</struts-config>

web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>StrutsLoginFormExample</display-name>
  <!-- WWW.2K8618.BLOGSPOT.COM -->
  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>
          /WEB-INF/struts-config.xml
       </param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

Register.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"   pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Registration Form</title>
</head>
<body>
<center>
<h1>Registration Form </h1>
<html:form action="/register" >
 Username : <html:text property="username"/><br/>
 <br/>
 Password : <html:password property="paswd"/><br/>
 <br/>
 <html:submit value="Register" />
</html:form>
</center>
</body>
</html>

RegistrationForm.java
package com.loginexample.forms;

import org.apache.struts.action.ActionForm;


public class RegistrationForm extends ActionForm
{
  /**
  * 
  */
 private static final long serialVersionUID = 1L;
  private String username = null;
  private String paswd = null;
  
  public String getUsername() {
   return username;
  }
  
  public void setUsername(String username) {
   this.username = username;
  }
  
  public String getpaswd() {
   return paswd;
  }
  
  public void setpaswd(String paswd) {
   this.paswd = paswd;
  }
}

RegistrationAction.java
package com.loginexample.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.loginexample.forms.RegistrationForm;
import com.loginexample.services.LoginService;

public class RegistrationAction extends Action {
 @Override
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  RegistrationForm regForm=(RegistrationForm) form;
  LoginService loginService= new LoginService();
  
  try
  {
   if(loginService.addLogin(regForm))
    return mapping.findForward("success");
   else
    return mapping.findForward("failure");
  }
  catch (Exception e)
  {
   return mapping.findForward("failure");
  }
 
 }

}


LoginService.java
package com.loginexample.services;

import java.sql.SQLException;

import com.loginexample.dao.impl.LoginDaoImplementation;
import com.loginexample.forms.RegistrationForm;

public class LoginService {
 LoginDaoImplementation loginDao= new LoginDaoImplementation();
 
 public boolean addLogin(RegistrationForm regForm) throws SQLException
 {
  if(loginDao.addLogin(regForm))
   return true;
  else
   return false;
 }
}


LoginDao.java
package com.loginexample.dao;

import java.sql.SQLException;

import com.loginexample.forms.RegistrationForm;

public interface LoginDao 
{
 public boolean addLogin(RegistrationForm regForm) throws SQLException;
}


LoginDaoImplementation.java
package com.loginexample.dao.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import com.loginexample.dao.LoginDao;
import com.loginexample.forms.RegistrationForm;
import com.loginexample.utilities.DBUtilities;

public class LoginDaoImplementation implements LoginDao
{
 public boolean addLogin(RegistrationForm regForm) throws SQLException
 {
  Connection con=null;
  boolean access=false;
  
  try
  {
   con=DBUtilities.getConnection();
   
   String query= "insert into login values (?,?)";
   PreparedStatement stmt= con.prepareStatement(query);
   stmt.setString(1, regForm.getUsername());
   stmt.setString(2, regForm.getpaswd());
   int result= stmt.executeUpdate();
   
   if(result>0)
   {
    access=true;
   }
  }
  finally
  {
   DBUtilities.closeConnection(con);
  }
  return access;
 }
}


DBUtilities.java
package com.loginexample.utilities;

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

public class DBUtilities {
 
    public static Connection getConnection()
    {
     Connection con = null;
     
     try 
     {
    Class.forName("com.mysql.jdbc.Driver");
    con  =DriverManager.getConnection("jdbc:mysql://localhost:3306/nn","root","nn");
     } 
     catch (ClassNotFoundException e) 
     {
   // TODO Auto-generated catch block
      e.printStackTrace();
     } 
     catch (SQLException e) 
     {
   // TODO Auto-generated catch block
      e.printStackTrace();
     }
     
     return con; 
     
    }
 
     public static void closeConnection(Connection con){      
      if(con!=null){
       try{
       con.close();
       }catch(SQLException e){}
      }      
     }   
       public static void closePreparedStatement(PreparedStatement ps){      
      if(ps!=null){
       try{
       ps.close();
       }catch(SQLException e){}
      }
      
     }

}


Success.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Registration Successful</title>
</head>
<body>
<center>
 <h1>Registration Successful</h1>
</center> 
</body>
</html>

Failure.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Registration Failure</title>
</head>
<body>
<center>
 <h1 style="color: red;">Registration Failed.</h1>
</center>
</body>
</html>


MySql Database
mysql> desc login;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| username | varchar(20) | YES  |     | NULL    |       |
| password | varchar(25) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
2 rows in set (0.06 sec)



Download: StrutsExampleRegistration

JSP PreparedStatement Example - Login -Java - Eclipse - Apache Tomcat

Java Login Example 
JSP - PreparedStatement - MySQL- Eclipse - Apache Tomcat 

Notes:

  • PreparedStatement can be used to prevent sql injection.

Project:



Project Explorer:


Source code:


LoginDao.java
package com.login.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.login.model.Login;
import com.login.utilities.DBUtilities;

public class LoginDao 
{
 public boolean checkLogin(Login login) throws SQLException
 {
  Connection con=null;
  try{
 
  con=DBUtilities.getConnection();
  
  String query="select * from sec_login where username=? and password=?";
  PreparedStatement pst= con.prepareStatement(query);
  pst.setString(1, login.getUsername());
  pst.setString(2, login.getPassword());
  ResultSet rs= pst.executeQuery();
 
  if(rs.next())
  {
   return true;
  }
  else 
  {
   return false;
  }
   
  }
  finally{
   DBUtilities.closeConnection(con);
  }
 }
 
}


DBUtilities.java
package com.login.utilities;

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

public class DBUtilities {
 
    public static Connection getConnection(){
     Connection con = null;
     
     try {
   Class.forName("com.mysql.jdbc.Driver");
   con  =DriverManager.getConnection("jdbc:mysql://localhost:3306/nn","root","nn");
  } catch (ClassNotFoundException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
    return con; 
     
    }
 
     public static void closeConnection(Connection con){      
      if(con!=null){
       try{
       con.close();
       }catch(SQLException e){}
      }      
     }   
       public static void closePreparedStatement(PreparedStatement ps){      
      if(ps!=null){
       try{
       ps.close();
       }catch(SQLException e){}
      }
      
     }

}



LoginManagement.java
package com.login.model;

import java.sql.SQLException;
import com.login.dao.LoginDao;

public class LoginManagement 
{

 LoginDao logindao= new LoginDao();
 public boolean checkLogin(Login login) throws SQLException
 {
  return logindao.checkLogin(login);
 }

 
}



LoginController.java
package com.login.controller;

import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.login.model.Login;
import com.login.model.LoginManagement;

/**
 * Servlet implementation class LoginController
 */
@WebServlet("/LoginController")
public class LoginController extends HttpServlet {
 private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public LoginController() {
        super();
        // TODO Auto-generated constructor stub
    }

 /**
  * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
  */
 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  // TODO Auto-generated method stub
  doPost(request, response);
 }

 /**
  * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  */
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  // TODO Auto-generated method stub
  
  LoginManagement loginManagement = new LoginManagement();
  RequestDispatcher rd= null;
  String action=request.getParameter("actiontype");
  if(action.equals("Login"))
  {
   
   String username=request.getParameter("username");
   String password= request.getParameter("password");
   Login login= new Login(username, password);
   boolean result=false;
   try {
     result = loginManagement.checkLogin(login);
     if(result)
     {
      request.setAttribute("user", login.getUsername());
      rd=request.getRequestDispatcher("Home.jsp");
      rd.forward(request, response);
      return;
     }
     else
     {
      request.setAttribute("err", "err");
      rd=request.getRequestDispatcher("Login.jsp");
      rd.forward(request, response);
      return;
     }
   } catch (SQLException e) {
    request.setAttribute("err", "err");
    rd=request.getRequestDispatcher("Login.jsp");  
    rd.forward(request, response);
    return;
   } 
  }
  

 }

}



Login.java
package com.login.model;

public class Login 
{

 private String username;
 private String password;
 
 public String getUsername() {
  return username;
 }
 public void setUsername(String username) {
  this.username = username;
 }
 public String getPassword() {
  return password;
 }
 public void setPassword(String password) {
  this.password = password;
 }
 public Login(String username, String password) {
  super();
  this.username = username;
  this.password = password;
 }
 
 
}



Login.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Log in</title>
<script type="text/javascript">
function validateForm()
{
 
 var x=document.getElementById("username");
 if (x.value=="")
   {
  
  document.getElementById('username_innermsg').innerHTML="Please enter the Username.";
    x.focus();
  return false;
   }
 
 document.getElementById('username_innermsg').innerHTML='';
 var x=document.getElementById("password");
 if (x.value=="")
   {
  
  document.getElementById('password_innermsg').innerHTML="Please enter the Password.";
    x.focus();
  return false;
   }
 
 document.getElementById('password_innermsg').innerHTML='';
}

</script>

</head>
<body>
<center>
<h1>Log in</h1>
<form action="LoginController" method="post" onsubmit="return validateForm();">
<input type="hidden" name="actiontype" value="Login">
<table >
<tr>
<td>User Name :</td><td><input type="text" name="username" id="username"></td><td width="200px"> <i style="color: red;" id="username_innermsg"></i></td>

</tr>
<tr>
<td>Password :</td><td><input type="password" name="password" id="password"></td><td width="200px"> <i style="color: red;" id="password_innermsg"></i></td>
</tr>
<tr><td></td><td  ><input type="submit" value="Login"><input type="reset" value="Cancel"></td><td ></td> </tr>
</table>


</form>
<i  style="color: red;">
<%
String er=null;
try{
 er= (String)request.getAttribute("err");
 if(er.equals("err"))
 {
  out.print("Incorrect Username/Password."); 
 }
}
catch (Exception e){
 
}

%>
</i>
</center>
</body>
</html>


Home.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Home</title>
</head>
<body>
<%
String user =(String)request.getAttribute("user");

%>
welcome <%if(user!=null) out.print(user); %>..
<center>
<h1>You are logged in.</h1>

</center>
</body>
</html>

Download Project: SecureLoginUsingPreparedStatement

Stored Procedure - Java - MySQL -Login Example - Eclipse



Log in Example Using Stored Procedure 
Java - MySQL - Eclipse


 Project Explorer:


Database Table: sec_login
mysql> desc sec_login;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| username | varchar(20) | YES  |     | NULL    |       |
| password | varchar(30) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
2 rows in set (0.05 sec)

mysql>

Stored Procedure: checklogin()
delimiter //
create procedure checklogin(in user varchar(20), in pass varchar(30))
begin

select * 
from sec_login 
where username=user AND password=pass;

end
//
delimiter ;
LoginDao.java
package com.login.dao;

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.login.model.Login;
import com.login.utilities.DBUtilities;

public class LoginDao 
{

 public boolean checkLogin(Login login) throws SQLException
 {
  Connection con=null;
  CallableStatement callableStatement = null;
  try{
 
  con=DBUtilities.getConnection();
  String dbCheckLogin = "{call checklogin(?,?)}";
  callableStatement = con.prepareCall(dbCheckLogin);
  callableStatement.setString(1, login.getUsername());
  callableStatement.setString(2, login.getPassword());
  ResultSet rs= callableStatement.executeQuery();
  
  if(rs.next())
  {
   return true;
  }
  else 
  {
   return false;
  }
   
  }
  finally{
   DBUtilities.closeConnection(con);
  }
 }
 
}

LoginManagement.java
package com.login.model;

import java.sql.SQLException;
import com.login.dao.LoginDao;

public class LoginManagement 
{

 LoginDao logindao= new LoginDao();
 public boolean checkLogin(Login login) throws SQLException
 {
  return logindao.checkLogin(login);
 }

 
}

LoginController.java
package com.login.controller;

import java.io.IOException;
import java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.login.model.Login;
import com.login.model.LoginManagement;

/**
 * Servlet implementation class LoginController
 */
@WebServlet("/LoginController")
public class LoginController extends HttpServlet {
 private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public LoginController() {
        super();
        // TODO Auto-generated constructor stub
    }

 /**
  * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
  */
 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  // TODO Auto-generated method stub
  doPost(request, response);
 }

 /**
  * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  */
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  // TODO Auto-generated method stub
  
  LoginManagement loginManagement = new LoginManagement();
  RequestDispatcher rd= null;
  String action=request.getParameter("actiontype");
  if(action.equals("Login"))
  {
   
   String username=request.getParameter("username");
   String password= request.getParameter("password");
   Login login= new Login(username, password);
   boolean result=false;
   try {
     result = loginManagement.checkLogin(login);
     if(result)
     {
      request.setAttribute("user", login.getUsername());
      rd=request.getRequestDispatcher("Home.jsp");
      rd.forward(request, response);
      return;
     }
  else
  {
   request.setAttribute("err", "err");
   rd=request.getRequestDispatcher("Login.jsp");
   rd.forward(request, response);
   return;
  }
   } catch (SQLException e) {
    request.setAttribute("err", "err");
    rd=request.getRequestDispatcher("Login.jsp");  
    rd.forward(request, response);
    return;
   } 
  }
  

 }

}

Login.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Log in</title>
<script type="text/javascript">
function validateForm()
{
 
 var x=document.getElementById("username");
 if (x.value=="")
   {
  
  document.getElementById('username_innermsg').innerHTML="Please enter the Username.";
    x.focus();
  return false;
   }
 
 document.getElementById('username_innermsg').innerHTML='';
 var x=document.getElementById("password");
 if (x.value=="")
   {
  
  document.getElementById('password_innermsg').innerHTML="Please enter the Password.";
    x.focus();
  return false;
   }
 
 document.getElementById('password_innermsg').innerHTML='';
}

</script>

</head>
<body>
<center>
<h1>Log in</h1>
<form action="LoginController" method="post" onsubmit="return validateForm();">
<input type="hidden" name="actiontype" value="Login">
<table >
<tr>
<td>Username :</td><td><input type="text" name="username" id="username"></td><td width="200px"> <i style="color: red;" id="username_innermsg"></i></td>

</tr>
<tr>
<td>Password :</td><td><input type="password" name="password" id="password"></td><td width="200px"> <i style="color: red;" id="password_innermsg"></i></td>
</tr>
<tr><td></td><td  ><input type="submit" value="Login"><input type="reset" value="Cancel"></td><td ></td> </tr>
</table>


</form>
<i  style="color: red;">
<%
String er=null;
try{
 er= (String)request.getAttribute("err");
 //out.print(er);
 if(er.equals("err"))
 {
  out.print("Username/Password not correct"); 
 }
}
catch (Exception e){
 
}

%>
</i>
</center>
</body>
</html>


Download project: SecureLoginUsingStoredProcedure

Stored Procedure MySQL Example

MySQl Stored Procedure Example

Table:


mysql> desc employees;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| empid     | int(11)     | YES  |     | NULL    |       |
| name   | varchar(20) | YES  |     | NULL    |       |
| salary | int(11)     | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
3 rows in set (0.02 sec)

mysql>

mysql> select * from employees order by id;
+------+-----------+--------+
| id   | name      | salary |
+------+-----------+--------+
|  100 | Ramu      |  10000 |
|  101 | Santhosh  |  15000 |
|  102 | Pratheesh |  16000 |
|  103 | Vasudevan |  20000 |
|  104 | Sajeevan  |  25000 |
+------+-----------+--------+
5 rows in set (0.02 sec)

mysql>


Stored Procedure getsalary() - gets name and salary for the given id.

delimiter //
create procedure getsalary(IN id INT)
begin
select name, salary
from employees
where empid=id;
end
//
delimiter ;

Defining Stored Procedure in MySQL:

mysql> delimiter //
mysql> create procedure getsalary(IN id INT)
    -> begin
    -> select name, salary
    -> from employees
    -> where empid=id;
    -> end
    -> //
Query OK, 0 rows affected (0.04 sec)

mysql> delimiter ;

Calling Stored Procedure

mysql> call getsalary(102);
+-----------+--------+
| name      | salary |
+-----------+--------+
| Pratheesh |  16000 |
+-----------+--------+
1 row in set (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

mysql>

Notes:

DELIMITER statement is used to change the standard delimiter(;) to another, in this case the delimiter is changed to //.


Declaring Variables

DECLARE variablename datatype DEFAULT initialvalue;

delimiter //
create procedure gettotalsalary()
begin
DECLARE totalsalary int DEFAULT 0; 
select sum(salary) into totalsalary
from employees;
select totalsalary;
end
//
delimiter ;

mysql> call gettotalsalary;
+-------------+
| totalsalary |
+-------------+
|       86000 |
+-------------+
1 row in set (0.03 sec)

Query OK, 0 rows affected (0.03 sec)

mysql> 


Parameters
The parameter has one of three modes IN, OUT and INOUT.

IN -parameter to input.
OUT-parameter to output.
INOUT -shared parameter.

Conditional Control

IF expression THEN commands
ELSEIF expression THEN commands
ELSE commands
END IF; 

CASE
WHEN expression THEN commands

WHEN expression THEN commands
ELSE commands
END CASE;

WHILE loop

WHILE expression DO
Statements
END WHILE

REPEAT loop - equivalent to do while loop in c.

REPEAT
statements;
UNTIL expression
END REPEAT

LEAVE - equivalent to BREAK in c.
   
ITERATE - equivalent to CONTINUE in c.

PHP Examples - Student Details - Delete Data From Database - Form

PHP Examples - Student Details
Delete Data From Database -  Form

Program:

// php10.php

<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PHP EXAMPLE 9 : Database with Form - Deletion </title>
</head>

<body>

<?php
 
 echo "<br/>PHP Example 9";
 echo"<br/>"; // line break
 echo"<h1>";
 echo"Delete Data From DATABASE";
 echo"</h1>";
 echo"<br/>";
 
 // echo"<br>CONNECTING...";
 $con = mysql_connect("localhost","root","");  // Connecting to the database
 if(!$con)
  die('Connection Failed'.mysql_error());
 echo"<br>CONNECTED...";
 if(!mysql_select_db("DB1",$con)) 
 {
  if(mysql_query("CREATE DATABASE DB1",$con)) // Creating database
   echo"<br><br>DB1 Created...";
  else
   echo 'Error Occured...'.mysql_error();
  
  mysql_select_db("DB1",$con);  // Creating tables
  
  mysql_query(" CREATE TABLE Students(
  Rollnum int NOT NULL,
  Name varchar(20),
  Mark int,
  PRIMARY KEY(Rollnum) )",$con);
 }
 $data= mysql_query(" SELECT Rollnum FROM Students ",$con); // Retreiving data
 echo"<center>
 <h2><b><u> STUDENT DETAILS </u></b></h2>
 <form method=\"post\" action=\"deletedata.php\"><br/><br/><br/>
 Select Roll Number: <select name=\"selection\">";

 while($rec=mysql_fetch_array($data))
 {
  echo "<option>".$rec['Rollnum']."</option>";  
 }
 
 echo "</select>
 <input type=\"submit\" value=\"Delete\" />
 </form>
 </center>";
 mysql_close($con);  // Closing connection
?>
</body>
</html>

// deletedata.php

<html >
<head>

<title>PHP EXAMPLE 9 : Database with Form - Deletion</title>
</head>

<body>
<?php
 
 echo "<br/>PHP Example 9";
 echo"<br/>"; // line break
 echo"<h1>";
 echo"Delete Data From DATABASE";
 echo"</h1>";
 echo"<br/>";
 
 //echo $_POST['selection'];
 
 echo"<br>CONNECTING...";
 $con = mysql_connect("localhost","root","");  // Connecting to the database
 if(!$con)
   die('Connection Failed'.mysql_error());
 echo"<br>CONNECTED...";
 if(!mysql_select_db("DB1",$con)) 
 {
  if(mysql_query("CREATE DATABASE DB1",$con)) // Creating database
   echo"<br><br>DB1 Created...";
  else
   echo 'Error Occured...'.mysql_error();
  mysql_select_db("DB1",$con);  // Creating tables
  mysql_query(" CREATE TABLE Students(
  Rollnum int NOT NULL,
  Name varchar(20),
  Mark int,
  PRIMARY KEY(Rollnum) )",$con);
 }
 $deleteqry="SELECT * FROM Students where Rollnum =". $_POST['selection'];
 $data1= mysql_query($deleteqry,$con); // Retreiving data
  
  //echo $data1;
  if($rec=mysql_fetch_array($data1))
   echo "<br/>Deleting...<br/>".$rec['Rollnum']." ".$rec['Name']." ".$rec['Mark']."<br/>";  
  else
   die( "<br/> Error in database access...".mysql_errno());  
  
  $deleterec = "DELETE FROM Students WHERE Rollnum=".$_POST['selection'];
 if(!mysql_query($deleterec,$con))
   die( "<br/> Error in deletion...".mysql_errno());  
 echo"<br><br>Record Deleted...<br/> Updated Table...";    

$data= mysql_query(" SELECT * FROM Students ",$con); // Retreiving data

 echo "<table border='2'>
   <tr> 
   <th> Roll No</th>
   <th> Name</th>
   <th> Mark </th>
   </tr>";

 while($rec=mysql_fetch_array($data))
 {
  echo "<tr><td>".$rec['Rollnum']."</td><td>".$rec['Name']."</td><td>".$rec['Mark']."</td></tr>";  
 }
 echo"</table>";
 
 // mysql_query(" DROP DB1 ",$con);
 mysql_close($con);  // Closing connection

 echo "<br/><br/><br/><br/><b>";
 echo"WWW.2K8618.BLOGSPOT.COM";
 echo"</b>";
?>


</body>
</html>

Output:



PHP Examples - Databases - Mysql



PHP Examples 
 Databases - MySQL

  • Connect to database
mysql_connect("hostname","user","password");
  • Create database
mysql_query("CREATE DATABASE DB_name", connection);
  • Create table
mysql_query(" CREATE TABLE Table_name ( Name varchar(20),...)", connection);


...

Program:


<html >
<head>

<title>PHP Example 7 : DATABASES (MySQL)</title>
</head>

<body>
<?php
 
 echo "PHP Example 7";
 echo"<br/>"; // line break
 echo"<h1>";
 echo"DATABASES: ( MySQL )";
 echo"</h1>";
 echo"<br/>";

 
 echo"<br>CONNECTING...";
 $con = mysql_connect("localhost","root","");  // Connecting to the database
 if(!$con)
   die('Connection Failed'.mysql_error());
 echo"<br>CONNECTED...";
 if(!mysql_select_db("DB1",$con)) 
 {
  if(mysql_query("CREATE DATABASE DB1",$con)) // Creating database
   echo"<br><br>DB1 Created...";
  else
   echo 'Error Occured...'.mysql_error();
  mysql_select_db("DB1",$con);  // Creating tables
 }

 mysql_query(" CREATE TABLE Students(
  Rollnum int NOT NULL,
  Name varchar(20),
  Mark int,
  PRIMARY KEY(Rollnum) )",$con);
  
 echo"<br><br>Table  Students Created...";  
   // Inserting data
 mysql_query(" INSERT INTO Students VALUES ('1','NIDHEESH','91')",$con);
 mysql_query(" INSERT INTO Students VALUES ('2','SAJITH','96')",$con);
 mysql_query(" INSERT INTO Students VALUES ('3','IRSHAD','88')",$con);
 mysql_query(" INSERT INTO Students VALUES ('4','AJISH','90')",$con);
 mysql_query(" INSERT INTO Students VALUES ('5','BINDU','90')",$con);
 mysql_query(" INSERT INTO Students VALUES ('6','RAFEEQ','95')",$con);
 echo"<br><br>Records added...";  
   
 $data= mysql_query(" SELECT * FROM Students ",$con); // Retreiving data

 echo "<table border='2'>
   <tr> 
   <th> Roll No</th>
   <th> Name</th>
   <th> Mark </th>
   </tr>";

 while($rec=mysql_fetch_array($data))
 {
  echo "<tr><td>".$rec['Rollnum']."</td><td>".$rec['Name']."</td><td>".$rec['Mark']."</td></tr>";  
 }
 echo"</table>";
 
 // mysql_query(" DROP DB1 ",$con);
 mysql_close($con);  // Closing connection

 echo "<br/><br/><br/><br/><b>";
 echo"WWW.2K8618.BLOGSPOT.COM";
 echo"</b>";
?>


</body>
</html>
Related Posts Plugin for WordPress, Blogger...