------------------------ PRACTICAL 01 --------------------------------
Calculator app using servlet
index.html
Calculator App
CalculatorServlet.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 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("Servlet CalculatorServlet");
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;
out.println(" Result = "+result);
if(opr.equals("/")) result=n1/n2;
out.println("");} }
------------------------ PRACTICAL 02 --------------------------------
Practical 2: Even or odd
Even or odd
test.java package app;
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;
/**
*
* @author user
*/
@WebServlet(name = "test", urlPatterns = {"/test"})
public class test extends HttpServlet {
/**
* Processes requests for both HTTP GET and POST
* methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int a =Integer.parseInt(request.getParameter("num"));
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
if(a%2 == 0){
out.println(a+" number is even ");
}else{
out.println(a+" number is odd");
}
out.println("");
out.println("");
out.println("");
out.println("Servlet test");
out.println("");
out.println("");
out.println("Servlet test at " + request.getContextPath() + "
");
out.println("");
out.println("");
}
}
}
------------------------ PRACTICAL 03 --------------------------------
Practical 3: Factorial
TODO supply a title
factorial.java package app;
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(name = "factorial", urlPatterns = {"/factorial"})
public class factorial extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int a = Integer.parseInt(request.getParameter("num"));
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
int fact =1;
for(int i=1;i<=a;i++){
fact = fact*i;
}
out.println("factorial of " + a + " is : "+fact);
out.println("");
out.println("");
out.println("");
out.println("Servlet factorial");
out.println("");
out.println("");
out.println("Servlet factorial at " + request.getContextPath() + "
");
out.println("");
out.println("");
}
}
}
------------------------ PRACTICAL 04 --------------------------------
practical 4 - servlet for login page (no db)
index.html
Login Form
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("Servlet LoginServlet");
String uname = request.getParameter("txtId");
String upass = request.getParameter("txtPass");
if(uname.equals("admin") && upass.equals("12345")){
out.println("");
out.println(" Welcome !!! "+uname+"
");
}
else{
out.println("");out.println(" Login Fail !!!
");
}
out.println("");}}
------------------------ PRACTICAL 05 --------------------------------
practical 5 - Registration using JDBC in db
index.html
Registration Page
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","root123");
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(""+row+ " Inserted Succesfullyyyyy");
}catch(Exception e){out.println(e);}
}
}
------------------------ PRACTICAL 06 --------------------------------
PRACTICAL 6 - Request Dispatcher
TODO supply a title
login.java
package app;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.RequestDispatcher;
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(name = "login", urlPatterns = {"/login"})
public class login extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String S1 = request.getParameter("name");
String S2 = request.getParameter("pass");
String S3 = request.getParameter("cpass");
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
if(S2.equals(S3)){
RequestDispatcher rd1 =request.getRequestDispatcher("welcome");
rd1.forward(request, response);
}else{
RequestDispatcher rd2 =request.getRequestDispatcher("error");
rd2.include(request, response);
}
out.println("");
out.println("");
out.println("");
out.println("Servlet login");
out.println("");
out.println("");
out.println("Servlet login at " + request.getContextPath() + "
");
out.println("");
out.println("");
}
}
}
welcome.java
package app;
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(name = "welcome", urlPatterns = {"/welcome"})
public class welcome extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
out.println("welcome user");
out.println("");
out.println("");
out.println("");
out.println("Servlet welcome");
out.println("");
out.println("");
out.println("Servlet welcome at " + request.getContextPath() + "
");
out.println("");
out.println("");
}
}
}
error.java
package app;
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(name = "error", urlPatterns = {"/error"})
public class error extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
out.println("error");
out.println("");
out.println("");
out.println("");
out.println("Servlet error");
out.println("");
out.println("");
out.println("Servlet error at " + request.getContextPath() + "
");
out.println("");
out.println("");
}
}
}
------------------------ PRACTICAL 07 --------------------------------
practical 7 - cookies
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
*
* @author user
*/
@WebServlet(name="FirstCookieServlet", urlPatterns={"/FirstCookieServlet"})
public class FirstCookieServlet extends HttpServlet {
/**
* Processes requests for both HTTP GET and POST
* methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Cookie firstCookie = new Cookie("myCookie", "FirstCookie");
firstCookie.setMaxAge(3600);
response.addCookie(firstCookie);
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
out.println("" + firstCookie.getName() + " cookie is created which holds the value " + firstCookie.getValue() + "");
/* TODO output your page here. You may use following sample code. */
out.println("");
out.println("");
out.println("");
out.println("Servlet FirstCookieServlet");
out.println("");
out.println("");
out.println("Servlet FirstCookieServlet at " + request.getContextPath() + "
");
out.println("");
out.println("");
}
}
}
------------------------ PRACTICAL 08 --------------------------------
practical 8 - session
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
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(name="DisplaySessionDetailsServlet", urlPatterns={"/DisplaySessionDetailsServlet"})
public class DisplaySessionDetailsServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
HttpSession mySession = request.getSession(true);
String heading;
Integer counter = new Integer(0);
try {
if (mySession.isNew()) {
heading = "This is the first time you are visiting this page.";
}
else {
heading = "Welcome back to this page";
Integer oldCounter = (Integer)mySession.getAttribute("counter");
if (oldCounter != null) {
counter = new Integer(oldCounter.intValue() + 1);
}
}
mySession.setAttribute ("counter", counter);
out.println("Displaying Session Details");
out.println("" + heading + "
");
out.println("SESSION ID: " + mySession.getId() + "
");
out.println("Creation Time of the Session: " + new Date(mySession.getCreationTime()) + "
");
out.println("Time of Last Access: " + new Date(mySession.getLastAccessedTime()) + "
");
out.println("You have visited this page " + (++counter));
out.println((counter == 1) ? " time " : " times ");
out.println("");
} finally {
out.close();
}
}
}
------------------------ PRACTICAL 09 --------------------------------
practical 9 - servlet question answer / quiz app
logic1
IOException {
int correct=0,incorrect=0;
String a1=request.getParameter("q1");
String a2=request.getParameter("q2");
String a3=request.getParameter("q3");
logic2
if(a1.equals("4"))
{
correct++;
}
else
{
incorrect++;
}
if(a2.equals("apple"))
{
correct++;
}
else
{
incorrect++;
}
if(a3.equals("lion"))
{
correct++;
}
else
{
incorrect++;
}
out.println("Correct : " +correct +"Incorrect : " +incorrect);
------------------------ PRACTICAL 10 --------------------------------
practical 10 - Display Intrinsic Objects
<%@page contentType="text/html" pageEncoding="UTF-8"%>
JSP Page
Use of Intrinsic Objects in JSP
Request Object
Query String <%=request.getQueryString() %>
Context Path <%=request.getContextPath() %>
Remote Host <%=request.getRemoteHost() %>
Response Object
Character Encoding Type <%=response.getCharacterEncoding() %>
Content Type <%=response.getContentType() %>
Locale <%=response.getLocale() %>
Session Object
ID <%=session.getId() %>
Creation Time <%=new java.util.Date(session.getCreationTime()) %>
Last Access Time<%=new java.util.Date(session.getLastAccessedTime()) %>
------------------------ PRACTICAL 11 --------------------------------
practical 11 - simple calculator app using JSP
TODO supply a title
jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
JSP Page
<%
int a=Integer.parseInt(request.getParameter("n1"));
int b=Integer.parseInt(request.getParameter("n2"));
String s=request.getParameter("b");
if(s.equals("Add"))
{
out.println("Add is : "+(a+b));
}
else if(s.equals("Sub"))
{
out.println("Sub is : "+(a-b));
}
else if(s.equals("Mul"))
{
out.println("Mul is : "+(a*b));
}
else
{
out.println("Div is : "+(a/b));
}
%>
------------------------ PRACTICAL 12 --------------------------------
practical 12
Create a registration and login JSP application to register and authenticate the user based on username and password using JDBC.
Register.html
Register.jsp
<%@page contentType="text/html" import="java.sql.*"%>
Registration JSP Page
<%
String uname=request.getParameter("txtName");
String pass1 = request.getParameter("txtPass1");
String pass2 = request.getParameter("txtPass2");
String email = request.getParameter("txtEmail");
String ctry = request.getParameter("txtCon");
if(pass1.equals(pass2)){
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/logindb","root","root123");
PreparedStatement stmt = con.prepareStatement("insert into user values (?,?,?,?)");
stmt.setString(1, uname); stmt.setString(2, pass1);
stmt.setString(3, email); stmt.setString(4, ctry);
int row = stmt.executeUpdate();
if(row==1) { out.println("Registration Successful"); }
else {
out.println("Registration FFFFFAAAIIILLLL !!!!");
%>
<%
}
}catch(Exception e){out.println(e);}
}
else
{
out.println("Password Mismatch
");
%>
<% }
%>
Database name : logindb
table name : user
fields : 1. username 2. password 3. email 4. country
Login.html
Login Page
Login.jsp
<%@page contentType="text/html" import="java.sql.*"%>
Registration JSP Page
<%
String uname=request.getParameter("txtName");
String pass = request.getParameter("txtPass");
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/logindb","root","root123");
PreparedStatement stmt = con.prepareStatement("select password from user where username=?");
stmt.setString(1, uname);
ResultSet rs = stmt.executeQuery();
if(rs.next()){
if(pass.equals(rs.getString(1)))
{
out.println("~~~ LOGIN SUCCESSFULLL ~~~
");
}
}
else{
out.println("User Name not exist !!!!!
");
%>
<%
}
}catch(Exception e){out.println(e);}
%>
(use same database and tables from register code, if already created no need to create else follow following details. )
Database name : logindb
table name : user
fields : 1. username 2. password 3. email 4. country
------------------------ PRACTICAL 13 --------------------------------
practical 13
Create a Currency Converter application using EJB.
index.html
CCServlet.java
package mypack;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
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(""+amt+ " Rupees = "+obj.r2Dollor(amt)+" Dollors
");
}
if(request.getParameter("type").equals("d2r"))
{
out.println(""+amt+ " Dollors = "+obj.d2Rupees(amt)+" Rupees
");
}
}}
CCBean.java
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; }
}
------------------------ PRACTICAL 14 --------------------------------
practical 14
Develop a Simple Room Reservation System Application Using EJB.
Create table roombook(RoomId varchar(4) PRIMARY KEY, RoomType varchar(20), charges number(5,2), cust varchar(20), mob varchar(20) , status varchar(10))
insert into roombook values('1001','Delux',5000.00,'','','Not Booked')
insert into roombook values('1002','Super Delux',7000.00,'','','Not Booked')
insert into roombook values('1003','Suit',9500.00,'','','Not Booked')
insert into roombook values('2001','Delux',5000.00,'','','Not Booked')
insert into roombook values('2002','Super Delux',7000.00,'','','Not Booked')
insert into roombook values('2003','Suit',9500.00,'','','Not Booked')
RoomBook.html
RBServlet.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);
}}
RRBean.java
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/rrdb","root","root");
String query="select * from roombook where RoomType=? and status='Not Booked'";
PreparedStatement pst = con.prepareStatement(query);
pst.setString(1,rt);
ResultSet rs= pst.executeQuery();
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
Charges = "+rs.getString(3);
}
else
{
msg = "Room "+rt+ " currently Not available";
}
}catch(Exception e){msg=""+e;}
return msg;}}