For Explanation watch the video
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
<display-name>URLRewriting</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
<style type="text/css">
div {
width: 500px;
margin: auto;
margin-top: 100px;
}
</style>
</head>
<body>
<div>
<form action="firsturl" method="post">
Name: <br> <input type="text" name="name"> <br>
Add : <br> <input type="text" name="add"> <br>
Choose any one: <br> <select name="dish">
<option value="sweet">Sweet</option>
<option value="spicy">Spicy</option>
</select> <br> <input type="submit" value="submit">
</form>
</div>
</body>
</html>
FirstServlet.java
package com.servlet;
import java.io.IOException;
import java.io.PrintWriter;
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("/firsturl")
public class FirstServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
// get PrintWriter
PrintWriter pw = res.getWriter();
// set content type
res.setContentType("text/html");
// get the values
String name = req.getParameter("name");
String add = req.getParameter("add");
String dish = req.getParameter("dish");
if (dish.equalsIgnoreCase("sweet")) {
pw.println("<h1>Choose One</h1>");
pw.println("<form action='secondurl?name=" + name + "&add=" + add + "' method='post'>");
pw.println("<select name='dish'>");
pw.println("<option value='gulab jamun'>gulab jamun</option>");
pw.println("<option value='jalebi'>jalebi</option>");
pw.println("</select>");
pw.println("<br>");
pw.println("<input type='submit' value='submit'>");
pw.println("</form>");
} else {
pw.println("<h1>Choose One</h1>");
pw.println("<form action='secondurl?name=" + name + "&add=" + add + "' method='post'>");
pw.println("<select name='dish'>");
pw.println("<option value='samosa'>samosa</option>");
pw.println("<option value='paneer'>paneer</option>");
pw.println("</select>");
pw.println("<br>");
pw.println("<input type='submit' value='submit'>");
pw.println("</form>");
}
// close the stream
pw.close();
}
}
SecondServlet.java
package com.servlet;
import java.io.IOException;
import java.io.PrintWriter;
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("/secondurl")
public class SecondServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
// get PrintWriter
PrintWriter pw = res.getWriter();
// set content type
res.setContentType("text/html");
// get the values
String name = req.getParameter("name");
String dish = req.getParameter("dish");
String add = req.getParameter("add");
pw.println("<h2>Thanks you " + name + " your " + dish + " will be placed at " + add + "</h2>");
// close the Stream
pw.close();
}
}