CREATE TABLE users ( User_ID VARCHAR(10) NOT NULL, UserName VARCHAR(10) NOT NULL, PASSWORD VARCHAR(10) NOT NULL, PRIMARY KEY (User_ID) ) INSERT INTO `DOJDB`.`users` (`User_ID`, `UserName`, `PASSWORD` ) VALUES ('DOJ01', 'Dinesh', 'Sweety' );
package com.dineshonjava.struts2.login; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import com.opensymphony.xwork2.ActionSupport; /** * @author Dinesh Rajput * */ @SuppressWarnings("serial") public class LoginAction extends ActionSupport{ private String username; private String password; private String userid; public String execute() { String ret = ERROR; Connection conn = null; try { String URL = "jdbc:mysql://localhost:3306/DOJDB"; Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(URL, "root", "root"); String sql = "SELECT name FROM user WHERE"; sql+=" userName = ? AND password = ?"; PreparedStatement ps = conn.prepareStatement(sql); ps.setString(1, username); ps.setString(2, password); ResultSet rs = ps.executeQuery(); while (rs.next()) { username = rs.getString(1); ret = SUCCESS; } } catch (Exception e) { addActionError(getText("error.login")); ret = ERROR; } finally { if (conn != null) { try { conn.close(); } catch (Exception e) { } } } return ret; } 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 String getUserid() { return userid; } public void setUserid(String userid) { this.userid = userid; } }
<%@ page contentType="text/html; charset=UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags"%> <!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>Struts 2 - Login Application | dineshonjava.com</title> </head> <body> <h2>Struts 2 - Login Application</h2> <font color="red"><s:actionerror /></font> <s:form action="login/welcome.action" method="post"> <s:textfield name="username" key="label.username" size="20" /> <s:password name="password" key="label.password" size="20" /> <s:submit method="execute" key="label.login" align="center" /> </s:form> </body> </html>
<%@ page contentType="text/html; charset=UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags"%> <!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>Welcome</title> </head> <body> <h2>Hello Welcome , <s:property value="username" />...! Dineshonjava.com</h2> </body> </html>
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <constant name="struts.enable.DynamicMethodInvocation" value="false" /> <constant name="struts.devMode" value="false" /> <constant name="struts.custom.i18n.resources" value="myapp" /> <package name="login" extends="struts-default" namespace="/login"> <action name="welcome" class="com.dineshonjava.struts2.login.LoginAction"> <result name="success">/Welcome.jsp</result> <result name="error">/Login.jsp</result> </action> </package> </struts>
label.username= Username label.password= Password label.login= Login error.login= Invalid Username/Password. Please try again.
<?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_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>Struts2MyFirstApp</display-name> <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.FilterDispatcher </filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <welcome-file-list> <welcome-file>Login.jsp</welcome-file> </welcome-file-list> </web-app>Now, right click on the project name and click Export > WAR File to create a War file. Then deploy this WAR in the Tomcat's webapps directory. Finally, start Tomcat server and try to access
Labels: struts2