[go: up one dir, main page]

0% found this document useful (0 votes)
5 views41 pages

Servlet Program

The document provides examples of servlet programs in Java, demonstrating how to print messages, send HTML files, access database data, and perform basic validation on user inputs. It includes code snippets for servlets that handle HTTP requests and responses, as well as HTML forms for user interaction. Additionally, it showcases improvements in validation techniques for user input.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views41 pages

Servlet Program

The document provides examples of servlet programs in Java, demonstrating how to print messages, send HTML files, access database data, and perform basic validation on user inputs. It includes code snippets for servlets that handle HTTP requests and responses, as well as HTML forms for user interaction. Additionally, it showcases improvements in validation techniques for user input.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 41

Servlet Program

Eg1: Servlet printing message on the browser


package com.gqt;

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("/Hello")
public class Hello extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {
PrintWriter pw = response.getWriter();
pw.println("Welcome to servlet classes");
pw.println("Have all of you understand this program");
} }
Output
Eg2: Servlet sending html file to the client
Welcome.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Welcome page</title>
<style>
h1{
text-align: center;
font-size: 60px;
font-family: cursive;
background-color: darkred;
color: white;
font-style: italic;
padding: 20px;
margin: 20px;
border-radius: 30px 0px 30px 0px;
box-shadow: 0px 0px 15px blue;
}
</style>
</head>
<body>
<h1>Welcome to sevlet classes....</h1>
</body>
</html>

Greeting.java(Servlet)

package com.gqt;

import java.io.IOException;
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("/Greeting")
public class Greeting extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
response.sendRedirect("/03-html-eg/Welcome.html");
} }
Output:

Eg3 Accessing data present in a database


Result.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>

<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">


<form action="/04-accessing-data/GetResult">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
Greetings.java(Servlet)

package com.gqt;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

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("/GetResult")
public class GetResult extends HttpServlet {
String url = "jdbc:mysql://localhost:3306/college";
String userName = "root";
String password = "sushmita";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet res = null;

String usn = null;


String name = null;
int marks1 = 0;
int marks2 = 0;
int marks3 = 0;
float percent = 0.0f;

public void init() {


try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection(url, userName, password);
} catch (Exception e) {
e.printStackTrace();
}
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {
try {
pstmt = con.prepareStatement("SELECT * FROM student WHERE usn
= ?");
String temp = request.getParameter("usn");
pstmt.setString(1, temp);

res = pstmt.executeQuery();
while(res.next()) {
usn = res.getString(1);
name = res.getString(2);
marks1 = res.getInt(3);
marks2 = res.getInt(4);
marks3 = res.getInt(5);
percent = res.getFloat(6);
}
PrintWriter pw = response.getWriter();
pw.println(usn);
pw.println(name);
pw.println(marks1);
pw.println(marks2);
pw.println(marks3);
pw.println(percent);

} catch (Exception e) {
e.printStackTrace();
}
}
public void destroy() {
try {
res.close();
pstmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
} } }
Output
Eg4: Accessing data using JSP
Result.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>

<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">


<form action="/05-accessing-data-using-jsp/GetResult.jsp">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
GetResult.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"


pageEncoding="UTF-8"%>

<!-- Importing packages -->


<%@ page import ="java.io.*" %>
<%@ page import ="java.sql.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Result Page</title>
</head>
<body>
<%!
String url = "jdbc:mysql://localhost:3306/college";
String userName = "root";
String password = "sushmita";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet res = null;

String usn = null;


String name = null;
int marks1 = 0;
int marks2 = 0;
int marks3 = 0;
float percent = 0.0f;
%>

<%!
public void jspInit() {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection(url, userName,
password);
} catch (Exception e) {
e.printStackTrace();
}
}
%>
<%
try {
pstmt = con.prepareStatement("SELECT * FROM student WHERE
usn = ?");
String temp = request.getParameter("usn");
pstmt.setString(1, temp);

res = pstmt.executeQuery();
while(res.next()) {
usn = res.getString(1);
name = res.getString(2);
marks1 = res.getInt(3);
marks2 = res.getInt(4);
marks3 = res.getInt(5);
percent = res.getFloat(6);
}
out.println(usn+" "+name+" "+marks1+" "+marks2+"
"+marks3+" "+percent);
} catch (Exception e) {
e.printStackTrace();
}
%>

<%!
public void jspDestroy() {
try {
res.close();
pstmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
%>
</body>
</html>
Output
Eg:5 performing basic validation of USN entered
Result.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>

<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">


<form action="/06-basic-validation/GetResult" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
GetResult.java(servlet)

package com.gqt;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

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("/GetResult")
public class GetResult extends HttpServlet {
String url = "jdbc:mysql://localhost:3306/college";
String userName = "root";
String password = "sushmita";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet res = null;
PrintWriter pw = null;

String usn = null;


String name = null;
int marks1 = 0;
int marks2 = 0;
int marks3 = 0;
float percent = 0.0f;

public void init() {


try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection(url, userName, password);
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
try {
pstmt = con.prepareStatement("SELECT * FROM student WHERE usn
= ?");
String temp = request.getParameter("usn");
pw = response.getWriter();
if(temp.length() != 10) {
pw.println("Inavlid USN. Try again!!");
}
else {
pstmt.setString(1, temp);
res = pstmt.executeQuery();
while(res.next()) {
usn = res.getString(1);
name = res.getString(2);
marks1 = res.getInt(3);
marks2 = res.getInt(4);
marks3 = res.getInt(5);
percent = res.getFloat(6);
}
PrintWriter pw = response.getWriter();
pw.println(usn);
pw.println(name);
pw.println(marks1);
pw.println(marks2);
pw.println(marks3);
pw.println(percent);
}
} catch (Exception e) {
e.printStackTrace();
}

protected void doPost(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {
doGet(request, response);
}
public void destroy() {
try {
res.close();
pstmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
} } }
Output

Eg6: Better Validation of Eg:5


Reutlt.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>

<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">


<form action="/07-better-validation/GetResult" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
Error.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>
<p class="h1 text-success m-5 text-center">Invalid USN.. Try again!!</p>
<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">
<form action="/07-better-validation/GetResult" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
Getresult.java(Servlet)

package com.gqt;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

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("/GetResult")
public class GetResult extends HttpServlet {
String url = "jdbc:mysql://localhost:3306/college";
String userName = "root";
String password = "sushmita";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet res = null;
PrintWriter pw = null;

String usn = null;


String name = null;
int marks1 = 0;
int marks2 = 0;
int marks3 = 0;
float percent = 0.0f;

public void init() {


try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection(url, userName, password);
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
try {
pstmt = con.prepareStatement("SELECT * FROM student WHERE usn
= ?");
String temp = request.getParameter("usn");
pw = response.getWriter();
if(temp.length() != 10) {
response.sendRedirect("/07-better-validation/error.html");
}
else {
pstmt.setString(1, temp);
res = pstmt.executeQuery();
while(res.next()) {
usn = res.getString(1);
name = res.getString(2);
marks1 = res.getInt(3);
marks2 = res.getInt(4);
marks3 = res.getInt(5);
percent = res.getFloat(6);
}
PrintWriter pw = response.getWriter();
pw.println(usn);
pw.println(name);
pw.println(marks1);
pw.println(marks2);
pw.println(marks3);
pw.println(percent);
}
} catch (Exception e) {
e.printStackTrace();
}
}

protected void doPost(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}

public void destroy() {


try {
res.close();
pstmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
} } }
Ouput

Eg:7 One level Servlet Chaining


Result.html
<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>

<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">


<form action="/08-One-level-servlet-chaining/Validation" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>

Errror.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>
<p class="h1 text-success m-5 text-center">Invalid USN.. Try again!!</p>
<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">
<form action="/08-One-level-servlet-chaining/Validation" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
Validation.java(servlet)

package com.gqt;

import java.io.IOException;
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("/Validation")
public class Validation extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {
String temp = request.getParameter("usn");
if(temp.length() != 10) {
response.sendRedirect("/08-One-level-servlet-chaining/error.html");
} else {

request.getServletContext().getRequestDispatcher("/GetResult").forward(request,
response);
} }
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
} }
Getresult.java(servlet)

package com.gqt;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

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("/GetResult")
public class GetResult extends HttpServlet {
String url = "jdbc:mysql://localhost:3306/college";
String userName = "root";
String password = "sushmita";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet res = null;
PrintWriter pw = null;

String usn = null;


String name = null;
int marks1 = 0;
int marks2 = 0;
int marks3 = 0;
float percent = 0.0f;

public void init() {


try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection(url, userName, password);
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
try {
response.setContentType("text/html");
pw = response.getWriter();
String temp = request.getParameter("usn");
System.out.println("Received USN: " + temp);

pstmt = con.prepareStatement("SELECT * FROM student WHERE usn


= ?");
pstmt.setString(1, temp);
res = pstmt.executeQuery();

if (res.next()) {
usn = res.getString(1);
name = res.getString(2);
marks1 = res.getInt(3);
marks2 = res.getInt(4);
marks3 = res.getInt(5);
percent = res.getFloat(6);

pw.println("<html><body>");
pw.println("<h2>USN: " + usn + "</h2>");
pw.println("<h2>Name: " + name + "</h2>");
pw.println("<h2>Marks: " + marks1 + ", " + marks2 + ", " +
marks3 + "</h2>");
pw.println("<h2>Percentage: " + percent + "</h2>");
pw.println("</body></html>");
} else {
pw.println("<h2>No record found for USN: " + temp + "</h2>");
}

} catch (Exception e) {
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
public void destroy() {
try {
res.close();
pstmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
} } }
Output
Eg:8 Two level servlet chaining
Result.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>

<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">


<form action="/09-two-level-servlet-chaining/Validation" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
Error.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>
<p class="h1 text-success m-5 text-center">Invalid USN.. Try again!!</p>
<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">
<form action="/09-two-level-servlet-chaining/Validation" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>
</body>
</html>
Validation.java(Servlet)

package com.gqt;

import java.io.IOException;
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("/Validation")
public class Validation extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String temp = request.getParameter("usn");
if(temp.length() != 10) {
response.sendRedirect("/09-two-level-servlet-chaining/error.html");
} else {

request.getServletContext().getRequestDispatcher("/GetResult").forward(request,
response);
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
GetResult.java

package com.gqt;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

@WebServlet("/GetResult")
public class GetResult extends HttpServlet {
String url = "jdbc:mysql://localhost:3306/college";
String userName = "root";
String password = "sushmita";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet res = null;
PrintWriter pw = null;

String usn = null;


String name = null;
int marks1 = 0;
int marks2 = 0;
int marks3 = 0;
float percent = 0.0f;

public void init() {


try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection(url, userName, password);
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
try {
pstmt = con.prepareStatement("SELECT * FROM student WHERE usn = ?");
String temp = request.getParameter("usn");
pw = response.getWriter();
pstmt.setString(1, temp);
res = pstmt.executeQuery();
while(res.next()) {
usn = res.getString(1);
name = res.getString(2);
marks1 = res.getInt(3);
marks2 = res.getInt(4);
marks3 = res.getInt(5);
percent = res.getFloat(6);
}
PrintWriter pw = response.getWriter();
pw.println(usn);
pw.println(name);
pw.println(marks1);
pw.println(marks2);
pw.println(marks3);

//--Creating a new session--


HttpSession hs = request.getSession(true);
hs.setAttribute("m1", marks1);
hs.setAttribute("m2", marks2);
hs.setAttribute("m3", marks3);

//--Calling PrintPercentage.java servlet--

request.getServletContext().getRequestDispatcher("/PrintPercentage").include(request,
response);
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
} }
Percentage.java(Servlet)
package com.gqt;

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;
import javax.servlet.http.HttpSession;

@WebServlet("/PrintPercentage")
public class PrintPercentage extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse


response) throws ServletException, IOException {
//--Accessing existing Session--
HttpSession hs = request.getSession();
int a = (int)hs.getAttribute("m1");
int b = (int)hs.getAttribute("m2");
int c = (int)hs.getAttribute("m3");

float percentage = (a+b+c)/3.0f;


PrintWriter pw = response.getWriter();
pw.println("Percentage = "+percentage);
}

protected void doPost(HttpServletRequest request, HttpServletResponse


response) throws ServletException, IOException {
doGet(request, response);
}

}
Output
Eg:9: Cookie Program
Result.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>

<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">


<form action="/10-cookies/Validation" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>
<div class="mt-5 d-grid gap-2">
<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
Error.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>Result Page</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css
" rel="stylesheet">
</head>
<body>
<p class="h1 text-success m-5 text-center">Invalid USN.. Try again!!</p>
<div class="m-auto bg-secondary p-2 col-md-4 rounded-4">
<form action="/10-cookies/Validation" method="post">
<h1 class = "text-center text-white">Result</h1>
<hr>
<div class = "mt-2">
<input type="text" name="usn" placeholder="Enter your usn"
class="form-control">
</div>

<div class="mt-5 d-grid gap-2">


<input type="submit" value="SUBMIT" class="btn btn-outline-
warning rounded-pill fw-bold">
</div>
</form>
</div>

<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.mi
n.js"></script>

</body>
</html>
Validation.java(servlet)
package com.gqt;

import java.io.IOException;
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("/Validation")
public class Validation extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {
String temp = request.getParameter("usn");
if(temp.length() != 10) {
response.sendRedirect("/10-cookies/error.html");
} else {

request.getServletContext().getRequestDispatcher("/GetResult").forward(request,
response);
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
GetResult.java(servlet)

package com.gqt;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import javax.servlet.http.Cookie;
@WebServlet("/GetResult")
public class GetResult extends HttpServlet {
String url = "jdbc:mysql://localhost:3306/college";
String userName = "root";
String password = "sushmita";
Connection con = null;
PreparedStatement pstmt = null;
ResultSet res = null;
PrintWriter pw = null;
String usn = null;
String name = null;
int marks1 = 0;
int marks2 = 0;
int marks3 = 0;
float percent = 0.0f;

public void init() {


try {
Class.forName("com.mysql.cj.jdbc.Driver");
con = DriverManager.getConnection(url, userName, password);
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
try {
pstmt = con.prepareStatement("SELECT * FROM student WHERE usn = ?");
String temp = request.getParameter("usn");
pw = response.getWriter();
pstmt.setString(1, temp);
res = pstmt.executeQuery();
while(res.next()) {
usn = res.getString(1);
name = res.getString(2);
marks1 = res.getInt(3);
marks2 = res.getInt(4);
marks3 = res.getInt(5);
percent = res.getFloat(6);
}
PrintWriter pw = response.getWriter();
pw.println(usn+" "+name+" "+marks1+" "+marks2+" "+marks3+"
"+percent);

//write a cookie code


//converting primitive type to object type using wrapper class
Integer a = new Integer(marks1);
Integer b = new Integer(marks2);
Integer c = new Integer(marks3);
Float d = new Float(percent);

//converting wrapper class to string using to string


String a1 = a.toString();
String b1 = b.toString();
String c1 = c.toString();
String d1 = d.toString();

//creating cookies and assigning name and value


Cookie ck1 = new Cookie("REG", usn);
Cookie ck2 = new Cookie("NAME", name);
Cookie ck3 = new Cookie("MARKS1", a1);
Cookie ck4 = new Cookie("MARKS2", b1);
Cookie ck5 = new Cookie("MARKS2", c1);
Cookie ck6 = new Cookie("MARKS2", d1);

//Setting max age for cookies


ck1.setMaxAge(60*60);
ck2.setMaxAge(60*60);
ck3.setMaxAge(60*60);
ck4.setMaxAge(60*60);
ck5.setMaxAge(60*60);
ck6.setMaxAge(60*60);

//sending and storing cookies in a client


response.addCookie(ck1);
response.addCookie(ck2);
response.addCookie(ck3);
response.addCookie(ck4);
response.addCookie(ck5);
response.addCookie(ck6);

} catch (Exception e) {
e.printStackTrace();
}
}

protected void doPost(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {
doGet(request, response);
}

public void destroy() {


try {
res.close();
pstmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Output

You might also like