Skip to content

Commit b6c453d

Browse files
Servlet API demo
1 parent 8974279 commit b6c453d

File tree

7 files changed

+207
-0
lines changed

7 files changed

+207
-0
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package com.itbulls.learnit.onlinestore.web.servlets;
2+
3+
import jakarta.servlet.http.HttpServlet;
4+
import java.io.IOException;
5+
import java.io.PrintWriter;
6+
import java.util.Enumeration;
7+
8+
import jakarta.servlet.ServletException;
9+
import jakarta.servlet.annotation.WebServlet;
10+
import jakarta.servlet.http.HttpServletRequest;
11+
import jakarta.servlet.http.HttpServletResponse;
12+
13+
@WebServlet("/headers")
14+
public class DisplayHeadersServlet extends HttpServlet {
15+
16+
// Method to handle GET method request.
17+
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
18+
19+
// Set response content type
20+
response.setContentType("text/html");
21+
22+
PrintWriter out = response.getWriter();
23+
String title = "HTTP Header Request Example";
24+
String docType = "<!doctype html public \"-//w3c//dtd html 4.0 " + "transitional//en\">\n";
25+
26+
out.println(docType + "<html>\n" + "<head><title>" + title + "</title></head>\n"
27+
+ "<body bgcolor = \"#f0f0f0\">\n" + "<h1 align = \"center\">" + title + "</h1>\n"
28+
+ "<table width = \"100%\" border = \"1\" align = \"center\">\n" + "<tr bgcolor = \"#949494\">\n"
29+
+ "<th>Header Name</th><th>Header Value(s)</th>\n" + "</tr>\n");
30+
31+
Enumeration headerNames = request.getHeaderNames();
32+
33+
while (headerNames.hasMoreElements()) {
34+
String paramName = (String) headerNames.nextElement();
35+
out.print("<tr><td>" + paramName + "</td>\n");
36+
String paramValue = request.getHeader(paramName);
37+
out.println("<td> " + paramValue + "</td></tr>\n");
38+
}
39+
out.println("</table>\n</body></html>");
40+
}
41+
42+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package com.itbulls.learnit.onlinestore.web.servlets;
2+
3+
import jakarta.servlet.http.HttpServlet;
4+
import java.io.IOException;
5+
import jakarta.servlet.ServletException;
6+
import jakarta.servlet.annotation.WebServlet;
7+
import jakarta.servlet.http.HttpServletRequest;
8+
import jakarta.servlet.http.HttpServletResponse;
9+
10+
@WebServlet("/redirect")
11+
public class RedirectDemo extends HttpServlet {
12+
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
13+
response.sendRedirect("http://google.com");
14+
}
15+
16+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package com.itbulls.learnit.onlinestore.web.servlets;
2+
3+
import jakarta.servlet.http.HttpServlet;
4+
import java.io.IOException;
5+
import jakarta.servlet.ServletException;
6+
import jakarta.servlet.annotation.WebServlet;
7+
import jakarta.servlet.http.HttpServletRequest;
8+
import jakarta.servlet.http.HttpServletResponse;
9+
10+
@WebServlet("/restricted")
11+
public class RestrictedAccessServlet extends HttpServlet {
12+
protected void doGet(HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) throws ServletException, IOException {
13+
response.sendError(403, "You are not allowed to access this resource");
14+
}
15+
16+
}
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
package com.itbulls.learnit.onlinestore.web.servlets;
2+
3+
import jakarta.servlet.http.HttpServlet;
4+
import java.io.IOException;
5+
import java.io.PrintWriter;
6+
import java.util.Locale;
7+
8+
import jakarta.servlet.ServletException;
9+
import jakarta.servlet.annotation.WebInitParam;
10+
import jakarta.servlet.annotation.WebServlet;
11+
import jakarta.servlet.http.HttpServletRequest;
12+
import jakarta.servlet.http.HttpServletResponse;
13+
14+
@WebServlet(urlPatterns = { "/demo", "/demo1" }, initParams = {
15+
@WebInitParam(name = "firstName", value = "Andrii"),
16+
@WebInitParam(name = "lastName", value = "Piatakha")
17+
})
18+
public class ServletDemo extends HttpServlet {
19+
20+
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
21+
String firstName = getInitParameter("firstName");
22+
String lastName = getInitParameter("lastName");
23+
24+
PrintWriter writer = response.getWriter();
25+
26+
writer.println("firstName = " + firstName + "; ");
27+
writer.println("lastName = " + lastName);
28+
29+
writer.println("</br>");
30+
31+
writer.println("Servlet name: " + getServletConfig().getServletName());
32+
writer.println("</br>");
33+
writer.println("Servlet name: " + getServletName());
34+
writer.println("</br>");
35+
writer.println("Context path: " + getServletContext().getContextPath());
36+
writer.println("</br>");
37+
38+
getServletContext().setAttribute("locale", Locale.US);
39+
40+
String param = request.getParameter("param");
41+
writer.println("Request param value: " + param);
42+
writer.println("</br>");
43+
writer.println("Request attribute: " + request.getAttribute("attr"));
44+
45+
46+
}
47+
48+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.itbulls.learnit.onlinestore.web.servlets;
2+
3+
import jakarta.servlet.http.HttpServlet;
4+
import java.io.IOException;
5+
import jakarta.servlet.ServletException;
6+
import jakarta.servlet.annotation.WebServlet;
7+
import jakarta.servlet.http.HttpServletRequest;
8+
import jakarta.servlet.http.HttpServletResponse;
9+
10+
@WebServlet("/demo2")
11+
public class ServletDemo2 extends HttpServlet {
12+
13+
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
14+
response.getWriter()
15+
.println("Locale attribute: " + getServletContext().getAttribute("locale"));
16+
}
17+
18+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.itbulls.learnit.onlinestore.web.servlets;
2+
3+
import jakarta.servlet.http.HttpServlet;
4+
import java.io.IOException;
5+
import jakarta.servlet.ServletException;
6+
import jakarta.servlet.annotation.WebServlet;
7+
import jakarta.servlet.http.HttpServletRequest;
8+
import jakarta.servlet.http.HttpServletResponse;
9+
10+
@WebServlet("/demo3")
11+
public class ServletDemo3 extends HttpServlet {
12+
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
13+
14+
request.setAttribute("attr", "Test Attribute Value");
15+
request.getRequestDispatcher("/demo").forward(request, response);
16+
}
17+
18+
19+
}
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
package com.itbulls.learnit.onlinestore.web.servlets;
2+
3+
import jakarta.servlet.http.HttpServlet;
4+
import java.io.IOException;
5+
import java.io.PrintWriter;
6+
import java.util.Calendar;
7+
import java.util.GregorianCalendar;
8+
9+
import jakarta.servlet.ServletException;
10+
import jakarta.servlet.annotation.WebServlet;
11+
import jakarta.servlet.http.HttpServletRequest;
12+
import jakarta.servlet.http.HttpServletResponse;
13+
14+
@WebServlet("/refresh-header")
15+
public class SetHeaderServlet extends HttpServlet {
16+
17+
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
18+
19+
// Set refresh, autoload time as 2 seconds
20+
response.setIntHeader("Refresh", 2);
21+
22+
// Set response content type
23+
response.setContentType("text/html");
24+
25+
// Get current time
26+
Calendar calendar = new GregorianCalendar();
27+
String am_pm;
28+
int hour = calendar.get(Calendar.HOUR);
29+
int minute = calendar.get(Calendar.MINUTE);
30+
int second = calendar.get(Calendar.SECOND);
31+
32+
if (calendar.get(Calendar.AM_PM) == 0)
33+
am_pm = "AM";
34+
else
35+
am_pm = "PM";
36+
37+
String CT = hour + ":" + minute + ":" + second + " " + am_pm;
38+
39+
PrintWriter out = response.getWriter();
40+
String title = "Auto Refresh Header Setting";
41+
String docType = "<!doctype html public \"-//w3c//dtd html 4.0 " + "transitional//en\">\n";
42+
43+
out.println(
44+
docType + "<html>\n" + "<head><title>" + title + "</title></head>\n" + "<body bgcolor = \"#f0f0f0\">\n"
45+
+ "<h1 align = \"center\">" + title + "</h1>\n" + "<p>Current Time is: " + CT + "</p>\n");
46+
}
47+
48+
}

0 commit comments

Comments
 (0)