0% found this document useful (0 votes)
332 views45 pages

Create A Simple Calculator Application Using Servlet

The document describes an assignment to create a simple servlet application. It involves creating 3 servlets: 1) A CalculatorServlet that accepts form input from an HTML page to perform basic math operations like addition, subtraction etc. and displays the result. 2) A LoginServlet that validates user credentials against a hardcoded value and displays a success or failure message. 3) A RegistrationServlet that accepts user registration details via a form, stores it in a database using JDBC and displays a success message. The servlets are created to handle HTTP requests from HTML pages containing forms to collect user input. Calculations/validations are performed and output displayed to demonstrate basic servlet functionality

Uploaded by

Rahul Masam
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)
332 views45 pages

Create A Simple Calculator Application Using Servlet

The document describes an assignment to create a simple servlet application. It involves creating 3 servlets: 1) A CalculatorServlet that accepts form input from an HTML page to perform basic math operations like addition, subtraction etc. and displays the result. 2) A LoginServlet that validates user credentials against a hardcoded value and displays a success or failure message. 3) A RegistrationServlet that accepts user registration details via a form, stores it in a database using JDBC and displays a success message. The servlets are created to handle HTTP requests from HTML pages containing forms to collect user input. Calculations/validations are performed and output displayed to demonstrate basic servlet functionality

Uploaded by

Rahul Masam
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/ 45

Enterprise Java Practicals Date:

practical 1a.
Create a simple calculator application using servlet.

index.html
<html>
<head>
<title>Calculator App</title>
</head>
<body>
<form action="CalculatorServlet" >
Enter First Number <input type="text" name="txtN1" ><br>
Enter Second Number <input type="text" name="txtN2" ><br>
Select an Operation <input type="radio" name="opr" value="+">
ADDTION <input type="radio" name="opr" value="-">
SUBSTRACTION <input type="radio" name="opr" value="*">
MULTIPLY <input type="radio" name="opr" value="/">
DIVIDE <br> <input type="reset">
<input type="submit" value="Calculate" >
</form>
</body>
</html>

Add a new Servlet to source package

Check “Add information to deployment descriptor” to add servlet into web.xml


But preferably use annotation.

CalculatorServlet.java
package mypack;
import java.io.IOException;

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class CalculatorServlet extends HttpServlet
{
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{

response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Servlet CalculatorServlet</title></head><body>");
double n1 = Double.parseDouble(request.getParameter("txtN1"));
double n2 = Double.parseDouble(request.getParameter("txtN2"));
double result =0;
String opr=request.getParameter("opr");
if(opr.equals("+")) result=n1+n2;
if(opr.equals("-")) result=n1-n2;
if(opr.equals("*")) result=n1*n2;
if(opr.equals("/")) result=n1/n2;
out.println("<h1> Result = "+result);
out.println("</body></html>");
}
}

Output:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

Practical 1b.
Create a servlet for a login page. If the username and password are correct then
it says message
“Hello <username>” else a message “login failed”

index.html
html>
<head>
<title>Login Form</title>
</head> <form action="LoginServlet" >

Enter User ID<input type="text" name="txtId"><br>


Enter Password<input type="password" name="txtPass"><br>
<input type="reset">
<input type="submit" value=" Click to Login " >
</form>
</html>

LoginServlet.java
package mypack;
import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
public class LoginServlet extends HttpServlet
{
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Servlet LoginServlet</title></head>");
String uname = request.getParameter("txtId");
String upass = request.getParameter("txtPass");

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

if(uname.equals("admin") && upass.equals("12345"))


{
out.println("<body bgcolor=blue >");
out.println("<h1> Welcome !!! "+uname+"</h1>");
}
else
{
out.println("<body bgcolor=red >");
out.println("<h1> Login Fail !!! </h1>");
}
out.println("</body></html>");
}
}

Practical 1c.
Create a registration servlet in Java using JDBC. Accept the details such as
Username, Password,Email, and Country from the user using HTML Form and
store the registration details in the database.

MySql queries
create database LoginDB;
use LoginDB;

create table user(username varchar(20) PRIMARY KEY, password varchar(20), email


varchar(20),country varchar(20));

insert into user values ('admin','admin','[email protected]','India');

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

select * from user;

index.html
<html>
<head>
<title>Registration Page</title>
</head>
<body>
<form action="RegisterServlet" >
<H1>Welcome to Registration page</H1>
Enter User Name
<input type="text" name="txtUid"><br>
Enter Password
<input type="password" name="txtPass"><br>
Enter Email <input type="text" name="txtEmail" ><br>
Enter Country <input type="text" name="txtCon" ><br>
<input type="reset" >
<input type="submit" value="REGISTER" >
</form>
</body>
</html>

RegisterServlet.java
package mypack;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class RegisterServlet extends HttpServlet {


public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String id = request.getParameter("txtUid");
String ps = request.getParameter("txtPass");
String em = request.getParameter("txtEmail");
String co = request.getParameter("txtCon");
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con
=DriverManager.getConnection("jdbc:mysql://localhost:3306/logindb","root","hr");

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

PreparedStatement pst = con.prepareStatement("insert into user values(?,?,?,?)");


pst.setString(1,id);
pst.setString(2,ps);
pst.setString(3,em);
pst.setString(4,co);
int row = pst.executeUpdate();
out.println("<h1>"+row+ " Inserted Succesfullyyyyy");
}
catch(Exception e){out.println(e);}
}
}

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

Practical 2a.
Using Request Dispatcher Interface create a Servlet which will validate the
password entered by
the user, if the user has entered "Servlet" as password, then he will be
forwarded to Welcome Servlet
else the user will stay on the index.html page and an error message will be
displayed.

index.html
<html>
<head>
<title>Login Form</title>
</head> <form action="LoginServlet" >
Enter User ID<input type="text" name="txtId"><br>
Enter Password<input type="password" name="txtPass"><br>
<input type="reset"> <input type="submit" value=" Click to Login " >
</form>
</html>

LoginServlet.java
package mypack;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.RequestDispatcher;
public class LoginServlet extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException

{
response.setContentType("text/html;charset=UTF-8");

PrintWriter out = response.getWriter();


out.println("<html><head>");
out.println("<title>Servlet LoginServlet</title></head>");
String uname = request.getParameter("txtId");
String upass = request.getParameter("txtPass");
if(uname.equals("admin") && upass.equals("servlet"))

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

{
out.println("<body bgcolor=blue >");
out.println("<h1> Welcome !!! to the world of servlet </h1>");
}
else
{
out.println("<body bgcolor=red >");
out.println("<h1> Login Fail !!! </h1>");
RequestDispatcher rd = request.getRequestDispatcher("index.html");
rd.include(request, response);
}
out.println("</body>");
out.println("</html>");
}
}

NewServlet.java
package mypack;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.RequestDispatcher;
public class NewServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head>");
out.println("<title>Servlet LoginServlet</title></head>");
String uname = request.getParameter("txtId");
String upass = request.getParameter("txtPass");
if(uname.equals("admin") && upass.equals("servlet")){
RequestDispatcher rd = request.getRequestDispatcher("NewServlet");
rd.forward(request, response);
}
else{
out.println("<body bgcolor=red >");
out.println("<h1> Login Fail !!! </h1>");
RequestDispatcher rd = request.getRequestDispatcher("index.html");
rd.include(request, response);

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

}
out.println("</body>");
out.println("</html>");
}
}

Practical 2b.

Create a servlet that uses Cookies to store the number of times a user has
visited servlet.
index.html
<html>
<head><title>Cookie Demo</title></head>
<body>
<form action="Page1" >
Enter Your Name <input type="text" name="txtName"><br>
<input type="submit" value="~~~ Click to Enter ~~~">
</form>
</body>
</html>
Page1.java
package mypack;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.Cookie;
public class Page1 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Page1</title></head>");
out.println("<body bgcolor=pink >");
String uname = request.getParameter("txtName");
out.println("<h1>~~~ Welcome "+uname+"</h1>");
Cookie ck1 = new Cookie("username", uname);
Cookie ck2 = new Cookie("visit","1");
response.addCookie(ck1); response.addCookie(ck2);
out.println("<h1><a href=Page2 >Click to visit Page 2 </a></h1>");
out.println("</body>");
out.println("</html>");
}
}
Page2.java
package mypack;
import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
public class Page2 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Page2</title></head>");
out.println("<body bgcolor=yellow >");
Cookie [] ck = request.getCookies();
for(int i=0;i<ck.length;i++){
if(ck[i].getName().equals("visit")){
int count = Integer.parseInt(ck[i].getValue())+1;
out.println("<h1>Visit No : "+count+"</h1>");
ck[i] = new Cookie("visit",count+"");
response.addCookie(ck[i]);
}
else {
out.println(ck[i].getName()+ " = "+ck[i].getValue()); }
out.println("<h1><a href=Page3 >Click to visit Page 3 </a></h1>");
out.println("<h1><a href=Page4 >Click to visit Page 4 </a></h1>");
out.println("<h1><a href=Page5 >Click to visit Page 5 </a></h1>");

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

out.println("</body>");
out.println("</html>");
}}

Practical2c.
Create a servlet demonstrating the use of session creation and destruction. Also check
whether the
user has visited this page first time or has visited earlier also using sessions.

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

index.html
<html>
<head><title>Session Demo</title></head>
<form action="Page1" method="get" >
Enter User ID <input type="text" name="txtName"><br>
<input type="reset" ><input type="submit" >
</form>
</html>

LogoutServlet.java
package mypack;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LogoutServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Servlet LogoutServlet</title></head>");

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

out.println("<body>");
javax.servlet.http.HttpSession hs = request.getSession();
if(hs != null) hs.invalidate();
out.println("<h1>You are Logged out now........</h1>");
out.println("</body>");
out.println("</html>");
}
}

Page1.java
package mypack;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class Page1 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Servlet Page1</title></head>");
HttpSession hs = request.getSession(true);
if(hs.isNew()){
out.println("<body bgcolor=yellow>");
String name = request.getParameter("txtName");
hs.setAttribute("uname", name);
hs.setAttribute("visit", "1");
out.println("<h1>Welcome First Time</h1>");
}
else{
out.println("<h1>Welcome Again</h1>");
int visit = Integer.parseInt((String)hs.getAttribute("visit"))+1;
out.println("<h1>You Visited "+visit+"Times</h1>");
hs.setAttribute("visit", ""+visit);
}
out.println("<h1>Your Session ID "+hs.getId()+"</h1>");
out.println("<h1>You Logged in at "+new java.util.Date(hs.getCreationTime())+"</h1>");

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

out.println("<h1><a href=Page2>Click for Page 2 </a></h1>");


out.println("<h1><a href=Page3>Click for Page 3 </a></h1>");
out.println("<h1><a href=Page4>Click for Page 4 </a></h1>");
out.println("<h1><a href=LogoutServlet>Click to Terminate Session </a></h1>");
out.println("</body>");
out.println("</html>");
}
}

Page2.java
package mypack;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class Page2 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html><head><title>Servlet Page2</title></head>");
HttpSession hs = request.getSession(false);
out.println("<h1>Welcome Again on Page No. 2</h1>");
int visit = Integer.parseInt((String)hs.getAttribute("visit"))+1;
out.println("<h1>You Visited "+visit+"Times</h1>");
hs.setAttribute("visit", ""+visit);
out.println("<h1>Your Session ID "+hs.getId()+"</h1>");
out.println("<h1>You Logged in at "+new java.util.Date(hs.getCreationTime())+"</h1>");
out.println("<h1><a href=Page1>Click for Page 1 </a></h1>");
out.println("<h1><a href=Page3>Click for Page 3 </a></h1>");
out.println("<h1><a href=Page4>Click for Page 4 </a></h1>");
out.println("<h1><a href=LogoutServlet>Click for Terminate Session </a></h1>");
out.println("</body>");
out.println("</html>");
}
}

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

practical 3a

.Create a Servlet application to upload and download a file.


index.html

<html>
<body>
<form action="FileUploadServlet" method="post" enctype="multipart/form-data">
Select File to Upload:<input type="file" name="file" id="file">
Destination <input type="text" value="/tmp" name="destination">
<br>
<input type="submit" value="Upload file" name="upload" id="upload">
</form>
</body>
</html>
DownloadServlet.java
package filedownloadapp;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class DownloadServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("APPLICATION/OCTET-STREAM");
String filename = request.getParameter("filename");
ServletContext context = getServletContext();
InputStream is = context.getResourceAsStream("/" + filename);
//ServletOutputStream out = response.getOutputStream(); // any of the two works
PrintWriter out=response.getWriter();
response.setHeader("Content-Disposition","attachment; filename=¥"" + filename + "¥""); // if
comment this statement then it wl ask you about the editor with which you want to open the
file
int i;
while ((i=is.read()) != -1) {
out.write(i);
}

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

is.close();
out.close();
}
}
FileUploadServlet.java
package fileservletapp;
import java.io.*;
import javax.servlet.*;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.http.*;
@MultipartConfig
public class FileUploadServlet extends HttpServlet {
public void doPost(HttpServletRequest req,HttpServletResponse res) throws ServletException,
IOException
{
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String path=req.getParameter("destination");
Part filePart=req.getPart("file");
String filename=filePart.getSubmittedFileName().toString();
out.print("<br><br><hr> file name: "+filename);
OutputStream os=null;
InputStream is=null;
try {
os=new FileOutputStream(new File(path+File.separator+filename));
is=filePart.getInputStream();
int read=0;
while ((read = is.read()) != -1) {
os.write(read);
}
out.println("<br>file uploaded sucessfully...!!!");
}
catch(FileNotFoundException e){out.print(e);}
}}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
<servlet>
<servlet-name>NewServlet</servlet-name>

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

<servlet-class>mypack.NewServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>FileUploadServlet</servlet-name>
<servlet-class>fileservletapp.FileUploadServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>DownloadServlet</servlet-name>
<servlet-class>filedownloadapp.DownloadServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>NewServlet</servlet-name>
<url-pattern>/NewServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>FileUploadServlet</servlet-name>
<url-pattern>/FileUploadServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>DownloadServlet</servlet-name>
<url-pattern>/DownloadServlet</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

OUTPUT

3b. Develop Simple Servlet Question Answer Application using Database.

create database qadb;


use qabd;
create table quiz (qno varchar(5) PRIMARY KEY,question varchar(100), op1 varchar(50), op2
varchar(50), op3 varchar(50), op4 varchar(50), ans varchar(50)) ;
insert into quiz values('001','What is the capital of India??','New
Delhi','Kolkata','Chennai','Mumbai','New Delhi');
insert into quiz values('002','Who was the First President of India??','Dr. Rajendra Prasad','Dr. S.
Radhakrishnan','Ram Nath Kovind','V. V. Giri','Dr. Rajendra Prasad');
insert into quiz values('003','What is ORM','Object Ratio Mean','Object Rotation
Measure','Object Relation Mapping','Oracle Request Management','Object Relation Mapping');
insert into quiz values('004','Unit of Energy is ___','Dozon','Kilo Meter ','Joul','Hertz','Joul') ;
insert into quiz values('005',' --- is the smallest memory unit.','bit','byte','Kilo Byte','Giga
Byte','bit');

index.html
<html>
<head>
<title>Quiz Application</title>
</head> <body>
<h1>Welcome to Quiz Servlet </h1>
<h1><a href="QuizServlet" >CLICK TO START QUIZ</a>
</h1>
</body>
</html>

QuizServlet.java
package mypack;

import java.io.*;
import java.sql.*;

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

import javax.servlet.*;
import javax.servlet.http.*;

public class QuizServlet extends HttpServlet


{
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter(); out.println("<form action=ShowResult >");
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/dman","root","hr");
Statement stmt = con.createStatement();
ResultSet res = stmt.executeQuery("select * from quiz");
out.println("<table border=1 >");
int qno=0; while(res.next())
{
qno++; out.println("<tr><td>"+res.getString(1)+"</td>");
out.println("<td>"+res.getString(2)+"</td></tr>");
out.println("<tr><td><input type=radio name="+qno+"
value="+res.getString(3)+"></td><td>"+res.getString(3)+"</td></tr>");
out.println("<tr><td><input type=radio name="+qno+"
value="+res.getString(4)+"></td><td>"+res.getString(4)+"</td></tr>");
out.println("<tr><td><input type=radio name="+qno+"
value="+res.getString(5)+"></td><td>"+res.getString(5)+"</td></tr>");
out.println("<tr><td><input type=radio name="+qno+"
value="+res.getString(6)+"></td><td>"+res.getString(6)+"</td></tr>");
}
}
catch(Exception e)
{
out.println(e);
}
out.println("</table>");
out.println("<input type=reset >");
out.println("<input type=submit value=SUBMIT >");
out.println("</form>");
}
}

ShowResult.java
package mypack;

import java.io.*;
import java.sql.*;

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

import javax.servlet.*;
import javax.servlet.http.*;
public class ShowResult extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/qadb","root","hr");
Statement stmt = con.createStatement();
ResultSet res = stmt.executeQuery("select ans from quiz");
int count =0, qno=0;
while(res.next()){
if(res.getString(1).equals(request.getParameter(""+(++qno))))
{ count++;
out.println("<h1>Correct </h1>");
}
else {
out.println("<h1>Incorrect </h1>");
}
}
out.println("<h1>Your Score is "+count+" </h1>");
}catch(Exception e){out.println(e);}}}

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

3c. Create simple Servlet application to demonstrate Non-Blocking Read


Operation.

index.html:
<html>
<head>
<title>Non Blocking IO</title>
<meta charset="UTF-8">
<meta http-equiv="Refresh" content="0; URL=NonBlockingServlet">
</head>

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

<body>
</body>
</html>

NonBlockingServlrt.java :
package nonblkapp;

import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class NonBlockingServlet extends HttpServlet
{
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter())
{
out.println("<h1>FileReader</h1>");
String filename="/WEB-INF/booklist.txt";
ServletContext c=getServletContext();
InputStream in=c.getResourceAsStream(filename);
String
path="http://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath(
)+"/Rea dingNonBloclingServlet";
URL url=new URL(path);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setChunkedStreamingMode(2);
conn.setDoOutput(true);
conn.connect();
if(in!=null)
{
InputStreamReader inr=new InputStreamReader(in);
BufferedReader br = new BufferedReader(inr);
String text="";
System.out.println("Reading started....");
BufferedWriter bw=new
BufferedWriter(new OutputStreamWriter(conn.getOutputStream()));
while((text=br.readLine())!=null){
out.print(text+"<br>");

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

try{
Thread.sleep(1000);
out.flush();
}
catch(InterruptedException ex){} }
out.print("reading completed....");
bw.flush();
bw.close();
} } }}

ReadingListener.java :
package nonblkapp;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.AsyncContext;
import javax.servlet.ReadListener;
import javax.servlet.ServletInputStream;
public class ReadingListener implements ReadListener {
private ServletInputStream input = null;
private AsyncContext ac = null;
ReadingListener(ServletInputStream in, AsyncContext c)
{
input = in;
ac = c;
}
@Override public void onDataAvailable()
throws IOException { }
public void onAllDataRead()
throws IOException {
ac.complete();
} public void onError(final Throwable t)
{
ac.complete();
t.printStackTrace();
} }

ReadingNonBlockingServlet.java:
package nonblkapp;
import java.io.IOException;
import java.io.PrintWriter;

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

import javax.servlet.AsyncContext;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/** * * @author Beena */
@WebServlet (name = "ReadingNonBlockingServlet", urlPatterns =
{"/ReadingNonBlockingServlet"},asyncSupported = true )
public class ReadingNonBlockingServlet extends HttpServlet
{ @Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
AsyncContext ac = request.startAsync();
ServletInputStream in=request.getInputStream();
in.setReadListener(new ReadingListener(in,ac));
}}

Output:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

Practical4a.

Develop a simple JSP application to display values obtained from the use of
intrinsic objects of various types.

index.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html><head><title>JSP Page</title></head>
<body>
<h1>Use of Intrinsic Objects in JSP</h1>
<h1>Request Object </h1>
Query String <%=request.getQueryString() %><br>
Context Path <%=request.getContextPath() %><br>
Remote Host <%=request.getRemoteHost() %><br>
<h1>Response Object </h1>
Character Encoding Type <%=response.getCharacterEncoding() %><br>
Content Type <%=response.getContentType() %><br>
Locale <%=response.getLocale() %><br>
<h1>Session Object </h1>
ID <%=session.getId() %><br>
Creation Time <%=new java.util.Date(session.getCreationTime()) %><br>
Last Access Time<%=new java.util.Date(session.getLastAccessedTime()) %><br>
</body>
</html>

OUTPUT:-

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

Practical 4b.
Develop a simple JSP application to pass values from one page to another with
validations. (Name-txt, age-txt, hobbies-checkbox, email-txt, gender-radio
button).

index.html
<html>
<head>
<title>User Information Paage</title>
</head>
<body>
<form action="Validate.jsp">
Enter Your Name<input type="text" name="name" >
<br>
Enter Your Age<input type="text" name="age" >
<br>
Select Hobbies <input type="checkbox" name="hob" value="Singing">
Singing <input type="checkbox" name="hob" value="Reading">
Reading Books <input type="checkbox" name="hob" value="Football">
Playing Football<br>
Enter E-mail<input type="text" name="email" >

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

<br>
Select Gender <input type="radio" name="gender" value="male">
Male <input type="radio" name="gender" value="female">
Female <input type="radio" name="gender" value="other">
Other<br>
<input type="hidden" name="error" value="">
<input type="submit" value="Submit Form">
</form>
</body>
</html>

Validate.jsp
<%@page contentType="text/html" pageEncoding="UTF-8" import="mypack.*" %>
<html><head><title>JSP Page</title></head> <body>
<h1>Validation Page</h1>

<jsp:useBean id="obj" scope="request" class="mypack.CheckerBean" >


<jsp:setProperty name="obj" property="*"/>
</jsp:useBean>

<%if (obj.validate()) { %>


<jsp:forward page="successful.jsp"/>
<% }
else {%> <jsp:include page="index.html"/>
<%}%> <%=obj.getError() %>
</body></html>

CheckerBean.java

package mypack;

public class CheckerBean


{ private String name, age, hob, email, gender, error; public CheckerBean(){error="";}
public void setName(String n){name=n;}
public void setAge(String a){age=a;}
public void setHob(String h){hob=h;}
public void setEmail(String e){email=e;}
public void setGender(String g){gender=g;}
public void setError(String e)
{error=e;} public String getName(){return name;}
public String getAge(){return age;}
public String getHob(){return hob;}
public String getEmail(){return email;}
public String getGender(){return gender;}
public String getError(){return error;}

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

public boolean validate(){ boolean res=true; if(name.trim().equals("")) {error+="<br>


Enter First Name";res=false;}
if(age.length() > 2 )
{error+="<br>Age Invalid";res=false;}
return res; } }

OUTPUT:-

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

Practical 5a.

Create an html page with fields, eno, name, age, desg, salary. Now on submit
this data to a JSP page which will update the employee table of database with
matching eno.

--> create table emp(empid varchar(10) PRIMARY KEY, ename varchar(50), salary varchar(50),age
varchar(50) )
insert into emp values('1','aaa','221234','11')
insert into emp values('2','bbb','334567','22')
insert into emp values('3','ccc','44454','33')
insert into emp values('4','ddd','55123','44')

---- index.html ---------


<html>
<body>
<form action="UpdateEmp.jsp" >
Enter Employee Number<input type="text" name="txtEno" ><br>
Enter Name<input type="text" name="txtName" ><br>
Enter age<input type="text" name="txtAge" ><br>
Enter Salary<input type="text" name="txtSal" ><br>
<input type="reset" ><input type="submit">
</form>
</body>
</html>
------------------- UpdateEmp.jsp--------------------------------

<%@page contentType="text/html" import="java.sql.*" %>


<html><body>
<h1>Employee Record Update</h1>
<%
String eno=request.getParameter("txtEno");
String name=request.getParameter("txtName");
String age = request.getParameter("txtAge");
String sal = request.getParameter("txtSal");
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/logindb","root","hr");
PreparedStatement stmt = con.prepareStatement("select * from emp where empid=?");
stmt.setString(1, eno);
ResultSet rs = stmt.executeQuery();
if(rs.next())

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

{
out.println("<h1>~~~ Employee "+name+" Exist ~~~ </h1>");
PreparedStatement pst1= con.prepareStatement("update emp set salary=? where empid=?");
PreparedStatement pst2= con.prepareStatement("update emp set age=? where empid=?");
pst1.setString(1, sal); pst1.setString(2, eno);
pst2.setString(1, age); pst2.setString(2, eno);
pst1.executeUpdate(); pst2.executeUpdate();
}
else{
out.println("<h1>Employee Record not exist !!!!!</h1>");
}
}catch(Exception e){out.println(e);}
%>
</body>
</html>

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

Practical 5b :
Create a JSP page to demonstrate the use of Expression language

index.html
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form action="show.jsp" >

enter uname:<input type="text" name="uname" ><br>

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

<h4> to view jsp <a href ="show.jsp" >click here </a></h4>


</form>
</body>
</html>

show.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>


<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<b> welcome ${param.uname} <b/><br>
<h1>simple mathematics</h1>
<br> A=6 B=7 than
<p> Addition is ${6+7}<br>

Subtraction of A and B is ${6-7}<br>

Multiplication of A and B is ${6*7}<br>

Division of A and B is ${6/7}<br>


</p>
</body>
</html>

OUTPUT:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

Practical 6a:

Create a Currency Converter application using EJB.

index.html
<html>
<head>
<title>Currency Converter</title>
</head>
<body>
<form action="CCServlet" >
Enter Amount <input type="text" name="amt"><br>
Select Conversion Type
<input type="radio" name="type" value="r2d" checked>
Rupees to Dollar
<input type="radio" name="type" value="d2r" >
Dollar to Rupees<br>
<input type="reset" >
<input type="submit" value="CONVERT" >
</form>
</body>
</html>

CCServlet.java
package mypack;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

import javax.ejb.EJB;
import mybeans.CCBean;
public class CCServlet extends HttpServlet
{ @EJB CCBean obj;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{ response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
double amt = Double.parseDouble(request.getParameter("amt"));
if(request.getParameter("type").equals("r2d"))
{ out.println("<h1>"+amt+ " Rupees = "+obj.r2Dollor(amt)+" Dollors</h1>");
} if(request.getParameter("type").equals("d2r"))
{ out.println("<h1>"+amt+ " Dollors = "+obj.d2Rupees(amt)+" Rupees</h1>"); }

}}

CCBean
package mybeans;
import javax.ejb.Stateless;
@Stateless
public class CCBean
{ public CCBean(){} public double r2Dollor(double r)
{ return r/65.65; } public double d2Rupees(double d)
{ return d*65.65; } }

output:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

practical 6b.
Develop a Simple Room Reservation System Application Using EJB.

index.html
<form action="RBServlet" >
Select a room Type
<input type="radio" name="txtType" value="Delux">Delux
<input type="radio" name="txtType" value="Super Delux">Super Delux
<input type="radio" name="txtType" value="Suit">Suit<br>
Enter Your Name<input type="text" name="txtCust" ><br>
Enter Mobile No.<input type="text" name="txtMob" ><br>
<input type="reset" ><input type="submit" value="Book Room">
</form>

RBServlet
package mybeans;
import javax.ejb.Stateless;
import java.sql.*;
@Stateless
public class RRBean {
public RRBean(){}
public String roomBook(String rt, String cn, String cm){
String msg="";
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/logindb","root","hr");
String query="select * from roombook where RoomType=? and status='Not Booked'";
PreparedStatement pst = con.prepareStatement(query);
pst.setString(1,rt);
ResultSet rs= pst.executeQuery();

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

if(rs.next()){
String rno=rs.getString(1);
PreparedStatement stm1 = con.prepareStatement("update roombook set cust=? where
RoomId=? ");
PreparedStatement stm2 = con.prepareStatement("update roombook set mobile=? where
RoomId=? ");
PreparedStatement stm3 = con.prepareStatement("update roombook set status=? where
RoomId=? ");
stm1.setString(1,cn); stm1.setString(2,rno);
stm2.setString(1,cm); stm2.setString(2,rno);
stm3.setString(1, "Booked"); stm3.setString(2,rno);
stm1.executeUpdate();
stm2.executeUpdate();
stm3.executeUpdate();
msg = "Room "+rno+ " Booked <br> Charges = "+rs.getString(3);
}
else
{
msg = "Room "+rt+ " currently Not available";
}
}catch(Exception e){msg=""+e;}
return msg;}}

-----RRBean.java
package mypack;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.ejb.EJB;
import mybeans.RRBean;
public class RBServlet extends HttpServlet {
@EJB RRBean obj;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException{
PrintWriter out=response.getWriter();
String rt=request.getParameter("txtType");
String cn=request.getParameter("txtCust");
String cm=request.getParameter("txtMob");
String msg = obj.roomBook(rt, cn, cm);
out.println(msg);
}}

output:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

practical 8b.
Develop a Guestbook Application Using JPA.
JPA Practical using GuestBook

Steps:
1. Create Web Application with dedicated folder for Library

2. Add Simple java class or Persitent Entity class from Database (code below
GuestBook.java)
3. Add SQL Connector Jar file to Library
4. Create Persistence Unit using jdbc connection to MySQL database
5. Create the JSP files (codes given below)
6. Run the Application.

GuestBook.java
package asif;
import javax.persistence.*;
@Entity
@Table(name="GuestBook")
public class GuestBook {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="VisitorNo", unique=true, updatable=false)
private Integer visitorNo;
@Column(name="VisitorName")
private String visitorName;
@Column(name="Message")
private String message;

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

@Column(name="MessageDate")
private String messageDate;
public GuestBook() {
}
public Integer getVisitorNo() {
return visitorNo;
}
public void setVisitorNo(Integer visitorNo) {
this.visitorNo = visitorNo;
}
public String getVisitorName() {
return visitorName;
}
public void setVisitorName(String visitorName) {
this.visitorName = visitorName;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String getMessageDate() {
return messageDate;
}
public void setMessageDate(String messageDate) {
this.messageDate = messageDate;
}
}

index.jsp
<html>
<body style="background-color: pink;">

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

Sign the Guest Book


<form action="GuestBookView.jsp" method="post">
Visitor Name: <input name="guest" maxlength="25" size="50" />
Message: <textarea rows="5" cols="36" name="message"></textarea>
<input type="submit" name="btnSubmit" value="Submit" />
</form>
</body>
</html>

GuestBookView.jsp
<%@page import="java.util.*,javax.persistence.*,asif.GuestBook" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%!
private EntityManagerFactory entityManagerFactory;
private EntityManager entityManager;
private EntityTransaction entityTransaction;
List<GuestBook> guestbook7;
%>
<%entityManagerFactory =
Persistence.createEntityManagerFactory("deepak8bPU");
entityManager = entityManagerFactory.createEntityManager();
String submit = request.getParameter("btnSubmit");
if(submit != null && ("Submit").equals(submit)) {
try {
String guest = request.getParameter("guest");
String message = request.getParameter("message");
String messageDate = new java.util.Date().toString();
GuestBook gb = new GuestBook();
gb.setVisitorName(guest);
gb.setMessage(message);
gb.setMessageDate(messageDate);
entityTransaction = entityManager.getTransaction();

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

entityTransaction.begin();
entityManager.persist(gb);
entityTransaction.commit();
} catch (RuntimeException e) {
if(entityTransaction != null) entityTransaction.rollback();
throw e;
}
response.sendRedirect("GuestBookView.jsp");
}
try {
guestbook7 = entityManager.createQuery("SELECT g from GuestBook
g").getResultList();
} catch (RuntimeException e) { }
entityManager.close();
%>
<html>
<body>
View the Guest Book <b>Click <a href="index.jsp"> here</a> to sign the
guestbook.</b>
<hr />
<%
Iterator iterator = guestbook7.iterator();
while (iterator.hasNext()) {
GuestBook obj = (GuestBook) iterator.next();
%>
On <%= obj.getMessageDate() %>,<br />
<b><%= obj.getVisitorName() %>:</b>
<%= obj.getMessage() %>
<br /><br />
<%
}
%>
</body>

TYBSC IT RAHUL MASAM 17028


Enterprise Java Practicals Date:

</html>

Output:

TYBSC IT RAHUL MASAM 17028

You might also like