Q18
Question 18
Last updated
Question 18
Last updated
1 1 2 1 2 3 Take ‘n’ in a textbox from user. Display this pattern using Scriptlets
Created PatternServlet.java to handle the url pattern "Q18/" and render the pattern.jsp page without parameter number and created DisplayPatternServlet.java to handle url pattern "Q18/DisplayPatternServlet" and parse the user input and print the desired pattern.
<%--
Created by IntelliJ IDEA.
User: MJK618
Date: 23-04-2021
Time: 16:40
To change this template use File
| Settings
| File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8"
language="java" %>
<html>
<head>
<link
<!--Bootstrap Stylling Sheet--!>
href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-eOJMYsd53ii+scO/bJGFsiCZc+5NDVN2yr8+0RDqr0Ql0h+rP48ckxlpbzKgwra6" crossorigin="anonymous">
<title>JSP-1 Display Pattern</title>
</head>
<body>
<div style="text-align: center;">
<div class="container-fluid">
<h1>Display Pattern | JSP-1 </h1>
</div>
</div>
</div>
<form method="post" action="/Q18/DisplayPatternServlet">
<div class="form-group">
<div class="container-fluid mt-5 ">
<div class="row align-items-start">
<div class="col-6">
<div class="container col-lg-6">
<div class="container mt-2">
<label for="n">
Enter the number
</label>
</div>
<div class="container mt-2">
<input
type="number"
class="form-control w-75 p-3"
id="n"
name="num"
placeholder="Choose a number"
required>
</div>
<div class="container mt-3 mx-10">
<input
type="submit"
formmethod="post"
class="btn btn-primary"
value="DISPLAY">
</div>
</div>
</div>
<div class="col-6">
<div class="container col-lg-6">
<div class="container-fluid mt-2 ">
<p>${pattern}</p>
</div>
</div>
</div>
</div>
</div>
</div>
</form>
<div class="card-footer mt-5 text-center">
<div class="row align-items-start">
<div class="col-6">
<div class="container col-lg-6">
<a class="btn btn-primary"
onclick="history.back(-1)"
role="button">Back</a>
</div>
</div>
<div class="col-6">
<div class="container col-lg-6">
<a class="btn btn-primary"
href="http://localhost:8080/"
role="button">Home Page</a>
</div>
</div>
</div>
</div>
</body>
</html>
package com.example.ITJSP;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet(name = "PatternServlet",
value = "/PatternServlet", urlPatterns = {"/Q18"})
public class PatternServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
response.setContentType("text/html");
getServletContext().getRequestDispatcher(
"/pattern.jsp").forward(request,response);
}
@Override
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
}
}
package com.example.ITJSP;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet(name = "DisplayPatternServlet",
value = "/DisplayPatternServlet",
urlPatterns = {"/Q18/DisplayPatternServlet"})
public class DisplayPatternServlet extends HttpServlet {
@Override
protected void doGet(
HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
getServletContext().getRequestDispatcher(
"/pattern.jsp").forward(request,response);
}
@Override
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
String num_1 = request.getParameter("num");
int n = Integer.parseInt(num_1);
String pattern = "";
for (int i=0; i<n; i++){
int count = 1;
for(int j=0; j<=i; j++) {
pattern += count + " ";
count += 1;
}
pattern += "<br>";
}
request.setAttribute("pattern", pattern);
doGet(request, response);
}
}
Try or Test The Corresponding Code Here