Example of MVC in JSP Application
- index.jsp
- ControllerServlet.java
- LoginBean.java
- login-success.jsp
- login-error.jsp
- web.xml
index.jsp:
<%@ page language=”java” contentType=”text/html; charset=ISO-8859-1″ pageEncoding=”ISO-8859-1″%> <!DOCTYPE html> <html> <head> <title>Insert title here</title> </head> <body> <form action=”ControllerServlet” method=”post”> Name:<input type=”text” name=”name”><br> Password:<input type=”password” name=”password”><br> <input type=”submit” value=”login”> </form> </body> </html> |
LoginBean.java:
public class LoginBean { private String name, password; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public boolean validate() { if (password.equals(“admin”)) { return true; } else { return false; } } } |
ControllerServlet.java:
import java.io.IOException; import java.io.PrintWriter; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ControllerServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(“text/html”); PrintWriter out = response.getWriter(); String name = request.getParameter(“name”); String password = request.getParameter(“password”); LoginBean bean = new LoginBean(); bean.setName(name); bean.setPassword(password); request.setAttribute(“bean”, bean); boolean status = bean.validate(); if (status) { RequestDispatcher rd = request.getRequestDispatcher(“login-success.jsp”); rd.forward(request, response); } else { RequestDispatcher rd = request.getRequestDispatcher(“login-error.jsp”); rd.forward(request, response); } } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } } |
login-succes.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> <title></title> </head> <body> <% out.print(“Welcome”); %> </body> </html> |
login-error.jsp:
<%@ page language=”java” contentType=”text/html; charset=ISO-8859-1″ pageEncoding=”ISO-8859-1″%> <!DOCTYPE html> <html> <head> <title>Insert title here</title> </head> <body> <p>Sorry! username or password error</p> <%@ include file=”index.jsp”%> </body> </html> |