You are on page 1of 42

ENTERPRISE JAVA BNN COLLEGE

PRACTICAL 1
Aim::Implement the following Simple Servlet application.
A::Create a simple calculator application using servlet.

Creation of web application::


File>>New Project>>Java Web>>WebApplication>>click Next>>type Project_name>>Select
Server>>Click Finish

Creation of servlet::
Right click on project>>Select New>>Servlet>>Type class _name>>Click Next>>Select option of
web.xml>>Click Finish.

Creation of jsp page::


Right click on project>>Select New>>jsp>>Type class _name>>Click Next>>Click Finish.

INPUT::
index.html::
<html> <body>
<form action="check" method="get">
Enter number 1:<input type="text" name="n1">
Enter number 2:<input type="text" name="n2">
Select List<select name="Arithmetic">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option></select>
<input type="submit" value="Submit">
</form> </body> </html>
check.java::
import java.io.*
import javax.servlet.*;
public class check extends GenericServlet {
public void service(ServletRequest req, ServletResponse res)throws IOException,
ServletException
{
PrintWriter out=res.getWriter();
int a=Integer.parseInt(req.getParameter("n1"));
int b=Integer.parseInt(req.getParameter("n2"));

1
ENTERPRISE JAVA BNN COLLEGE

String s=req.getParameter("Arithmetic");
if(s.equals("+")){
out.print("Addition is "+(a+b));
}
else if(s.equals("-")){
out.print("Subtraction is "+(a-b));
}
else if(s.equals("*")){
out.print("Multipliation is "+(a*b));
}
else{
out.print("Division is "+(a/b));
}}}
OUTPUT::

2
ENTERPRISE JAVA BNN COLLEGE

B:: 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”.

INPUT::
Index.html::
<html> <body>
<form action="demo">
Enter UserName::<input type="text" name="n1"><br>
Enter Password::<input type="password" name="n2"><br>
<input type="submit" value="Submit"><br>
</form> </body> </html>
demo.java::
import java.io.*;
import javax.servlet.*;
public class demo extends GenericServlet {
public void service(ServletRequest req,ServletResponse res)
throws ServletException, IOException {
PrintWriter out = res.getWriter();
String n1=req.getParameter("n1");
String n2=req.getParameter("n2");
if(n1.equals("ABC")&& n2.equals("123"))
{
out.print("Login Successful");
}
Else
{
out.println("Try again !!!");
}}}
OUTPUT::

3
ENTERPRISE JAVA BNN COLLEGE

C:: 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.

INPUT::
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","system");
PreparedStatement pst = con.prepareStatement("insert into user values(?,?,?,?)");
pst.setString(1,id);
pst.setString(2,ps);
4
ENTERPRISE JAVA BNN COLLEGE

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

OUTPUT::

DataBase ::

5
ENTERPRISE JAVA BNN COLLEGE

PRACTICAL 2
Aim::Implement the following Servlet applications with Cookies and Session.
A::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

INPUT:;
Index.html::
<html>
<body>
<form action="demo" method="get">
Enter Username:<input type="text" name="n1"><br>
Enter Password:<input type="password" name="n2"><br>
<input type="submit" value="Submit"><br>
</form>
</body>
</html>
Demo.java::
import java.io.*;
import javax.servlet.*;
public class demo extends GenericServlet {
public void service(ServletRequest req, ServletResponse res)throws IOException, ServletException
{
PrintWriter out=res.getWriter();
String n1=req.getParameter("n1");
String n2=req.getParameter("n2");
if(n2.equals("pass"))
{
req.setAttribute("user",n1);
RequestDispatcher rd=req.getRequestDispatcher("welcome");
rd.forward(req, res);
}
else
{
out.print("Password is invalid");}}}
6
ENTERPRISE JAVA BNN COLLEGE

Welcome.java::
import java.io.*;
import javax.servlet.*;
public class welcome extends GenericServlet {
public void service(ServletRequest req, ServletResponse res)throws IOException, ServletException
{
String s =(String)req.getAttribute("user");

PrintWriter out=res.getWriter();

out.print(s+" Aap ka swagathai");


}
}

OUTPUT::

7
ENTERPRISE JAVA BNN COLLEGE

B:: Create a servlet that uses Cookies to store the number of times a user has visited servlet.

INPUT::
Index.html::
<html><body><form action="cookie" method="Get">
<input type="submit" value="submit"></form></body></html>
Cookie.java::
package cookie;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class cookie extends HttpServlet{
static int i=1;
public void doGet(HttpServletRequest req, HttpServletResponse res)throws IOException, ServletException{
res.setContentType("text/html");
PrintWriter out=res.getWriter();
String k=String.valueOf(i);
Cookie c=new Cookie("visit",k);
res.addCookie(c);
int j=Integer.parseInt(c.getValue());
if(j==1){
out.println("!!Welcome!! Now refresh your page");
}
else{
out.println("You visited "+i+" times");
}
i++;
}}
OUTPUT::

After 4th Refersh

8
ENTERPRISE JAVA BNN COLLEGE

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

INPUT::
Index.html
<html>
<body>
<form action="session" method="get">
Enter User Id:<input type="text" name="txtName"><br>
<input type="reset" value="Reset">
<input type="submit" value="Submit">
</form>
</body>
</html>
Session.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class session extends HttpServlet
{
public void doGet(HttpServletRequest req, HttpServletResponse res)throws IOException, ServletException
{
PrintWriter out=res.getWriter();
out.println("<html><body>");
HttpSession hs=req.getSession(true);
if(hs.isNew())
{
String name=req.getParameter("txtName");
hs.setAttribute("uname", name);
hs.setAttribute("visit","1");
out.println("<h5>Welcome First Time</h5>");
}
else
{

9
ENTERPRISE JAVA BNN COLLEGE

out.println("<h5>Welcome Again</h5>");
int visit=Integer.parseInt((String)hs.getAttribute("visit"))+1;
out.println("<h5>You visited "+visit+" times</h5>");
hs.setAttribute("visit", visit);
}
out.println("<h5>Your Seesion Id "+hs.getId()+"</h5>");
out.println("<h5>You Loged in at "+new java.util.Date(hs.getCreationTime())+"</h5>");
out.println("<h5><a href=logoutservlet>Click to LOGOUT</a></h5>");
out.println("</body>");
out.println("</html>");
}
}
logoutServlet.java
package logoutservlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.*;
public class logoutservlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res)throws IOException, ServletException
{
PrintWriter out=res.getWriter();
out.println("<html>");
out.println("<body>");
HttpSession hs=req.getSession();
if(hs!=null);
{
hs.invalidate();
}
out.println("<h1>You are logout now...</h1>");
out.println("</body>");
out.println("</html>");
}
}
10
ENTERPRISE JAVA BNN COLLEGE

OUTPUT::

➢ When you click on submit button::

➢ Refresh your page::

➢ Click on the link to logout::

11
ENTERPRISE JAVA BNN COLLEGE

PRACTICAL 3
Aim::Implement the Servlet IO and File applications.
A::Create a servlet application to upload and download a file.

Upload File:-
INPUT::
Index.html
<html><body><h3> File upload </h3><br>
select the file to upload:<br>
<form action="uploadServlet" method ="POST" enctype="multipart/form-data">
<input type="file" name="file" size="50" value="choose file"><br>
<input type="submit" value="upload file">
</form></body></html>
uploadServlet.java
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 com.oreilly.servlet.MultipartRequest;
public class uploadServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out=response.getWriter();
MultipartRequest m=new MultipartRequest(request,"E:\\");
out.print("sucessfull upload"); }}
OUTPUT::

12
ENTERPRISE JAVA BNN COLLEGE

Download File:-
INPUT::
Index.html::
<html><body>
<a href="download">Download the file</a>
</body></html>
Download.java::
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class download extends HttpServlet{
public void doGet(HttpServletRequest req, HttpServletResponse res)throws IOException, ServletException{
PrintWriter out=res.getWriter();
String filename="sam.txt"; String filepath="D:\\";
res.setHeader("Content-Disposition","attachment; filename= "+filename);
FileInputStream f=new FileInputStream(filepath+filename);
int i;
while((i=f.read())!=-1){
out.write(i);
}
f.close();
}}
OUTPUT::
➢ When you click on download the file.

13
ENTERPRISE JAVA BNN COLLEGE

B::Develop Simple Servlet Question Answer Application.


INPUT::
Index.html::
<html><body><form method="post" action="check"><h1>My paper</h1>
Q. 1) Which is a valid keyword in java? <br>
<input type="radio" name="r1" value ="int"/>interface
<input type="radio" name="r1" value ="F"/>Float
<input type="radio" name="r1" value ="s"/>string
<input type="radio" name="r1" value ="all"/>All of the above<br><br>
Q. 2) What is sent to the user via HTTP, invoked using the HTTP protocol on the user's computer, and run
on the user's computer as an application?<br>
<input type="radio" name="r2" value="app"/>A Java application
<input type="radio" name="r2" value="applet"/>A Java applet
<input type="radio" name="r2" value="servlet"/>A Java servlet
<input type="radio" name="r2" value="none"/>None of the above <br><br>
Q. 3) JDBC stands for:<br>
<input type="radio" name="r3" value="jdbc"/>Java Database Connectivity
<input type="radio" name="r3" value="jdbc1"/>Java Database Components
<input type="radio" name="r3" value="jdbc2"/>Java Database Control
<input type="radio" name="r3" value="none"/>None of the above <br><br>
Q. 4) What is bytecode?<br>
<input type="radio" name="r4" value="msc"/>Machine-specific code
<input type="radio" name="r4" value="jcn"/>Java code
<input type="radio" name="r4" value="mic"/>Machine-independent code
<input type="radio" name="r4" value="none"/>None of the above <br><br>
<input type="submit" value="Display Result"/>
<input type="reset" value="Reset Values"/></form></body></html>
Check.java::
import java.io.*;
import javax.servlet.*;
public class check extends GenericServlet{
public void service(ServletRequest req, ServletResponse res)throws ServletException, IOException{
res.setContentType("text/html;charset=UTF-8");
PrintWriter out = res.getWriter();

14
ENTERPRISE JAVA BNN COLLEGE

try{
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet page</title>");
out.println("</head>");
out.println("<body>");
String a1,a2,a3,a4;
a1=req.getParameter("r1");
a2=req.getParameter("r2");
a3=req.getParameter("r3");
a4=req.getParameter("r4");
if((a1.equals("int"))&&(a2.equals("app" ))&&(a3.equals("jdbc"))&&(a4.equals("mic"))){
out.println("You are Pass");
}else{
out.println("Better luck Next time");}
out.println("</body>");
out.println("</html>");
}finally{
out.close();
}}}
OUTPUT::

15
ENTERPRISE JAVA BNN COLLEGE

PRACTICAL 4
Aim:: Implement the following JSP applications.
A:: Develop a simple JSP application to display values obtained from the use of intrinsic objects of
various types.
INPUT::
Implicit.jsp::
<html><body>
<h1>Use of implicit object in jsp</h1>
<h1>Request Object</h1>
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>
<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())%>
</body></html>
OUTPUT::

16
ENTERPRISE JAVA BNN COLLEGE

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

INPUT::
Index.html
<html><head><title>User Information Page</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" ><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>
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;}

17
ENTERPRISE JAVA BNN COLLEGE

public String getEmail(){return email;}


public String getGender(){return gender;}
public String getError(){return error;}
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;}}
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>
successful.jsp
<html><body>
<h1>DATA VALIDATED SUCCESSFULLY </h1>
<%
String s1=request.getParameter("name");
out.print(s1);
%></body> </html>

18
ENTERPRISE JAVA BNN COLLEGE

OUTPUT::

19
ENTERPRISE JAVA BNN COLLEGE

C:: Create a registration and login JSP application to register and authenticate the user based on username
and password using JDBC.

INPUT::
Index.html:
<html><body>
<form action="Register.jsp">
<h1>New User Registration Page</h1>
Enter User Name <input type="text" name="txtName"><br>
Enter Password <input type="password" name="txtPass1"><br>
Re-Enter Password<input type="password" name="txtPass2"><br>
Enter Email<input type="text" name="txtEmail"><br>
Enter Country Name <input type="text" name="txtCon"><br>
<input type="reset" ><input type="submit" value="REGISTER">
</form></body> </html>
Register.jsp:
<%@page import="java.lang.System.out"%>
<%@page contentType="text/html" import="java.sql.*"%>
<%
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/mydb","root","hassan11");
PreparedStatement stmt = con.prepareStatement("insert into user values(?,?,?,?)");
stmt.setString(1, uname);
stmt.setString(2, pass1);
stmt.setString(3, email);
stmt.setString(4, ctry);
20
ENTERPRISE JAVA BNN COLLEGE

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("<h1>Password Mismatch</h1>");
} %>

OUTPUT::

DataBase::--

21
ENTERPRISE JAVA BNN COLLEGE

PRACTICAL 5
Aim::Implement the following JSP, JSTL and EL Applications.
A:: 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.

INPUT::

Index.html:
<html>
<body>
<form action="update.jsp">
emp no.<input type="text" name="t1"><br>
emp name<input type="text" name="t2"><br>
emp age<input type="text" name="t3"><br>
emp salary<input type="text" name="t4"><br>
<input type="submit" value="update">
</form>
</body>
</html>
Update.jsp:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.sql.*" %>
<%
String eno=request.getParameter("t1");
String ename=request.getParameter("t2");
String age=request.getParameter("t3");
String salary=request.getParameter("t4");
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/emp1","root","root123");
PreparedStatement stmt=con.prepareStatement("select * from tab where eno=?");
stmt.setString(1,eno);
ResultSet rs=stmt.executeQuery();
if(rs.next())

22
ENTERPRISE JAVA BNN COLLEGE

{
PreparedStatement pst1=con.prepareStatement("update tab set ename=?,age=?,salary=? where
eno=?");
pst1.setString(3,salary);
pst1.setString(2,age);
pst1.setString(1,ename);
pst1.setString(4,eno);
pst1.executeUpdate();
out.print("<h1>record updated</h1>");
}
else{
out.print("<h1> record not found</h1>");
}
}
catch(Exception e){
out.print(e);
} %>
OUTPUT::
Befor Updation:

After Updation:

23
ENTERPRISE JAVA BNN COLLEGE

B::Create a JSP page to demonstrate the use of Expression language.

INPUT::
Index.jsp::
<html><body><%
session.setAttribute("user","sameer");
Cookie s=new Cookie("name","sam");
response.addCookie(s); %>
<a href="Expression.jsp">Visit</a>
</body></html>
Expression.jsp::
<html><body>
<h1>Use of Expression Language</h1><br>
${"Learning Expression"}<br>
Expression1:${1>(4/2)}<br>
Expression2:${(10*10) ne 100}<br>
<h1>Use of implicit object in Expression Language</h1><br>
Expression Language session Scope Object:${sessionScope.user}<br>
Expression Language cookie:${cookie.name.value}
</body></html>
OUTPUT::

24
ENTERPRISE JAVA BNN COLLEGE

C:: Create a JSP application to demonstrate the use of JSTL.

INPUT::
Function.jsp::
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<html>
<body>
<c:set var="String" value="Welcome-to-tutorials-point"/>
contains:${fn:contains(String,"tutorial")}<br>
indexOf:${fn:indexOf(String,"to")}<br>
replace:${fn:replace(String,"tutorials","javat")}<br>
toLowerCase:${fn:toLowerCase(String)}<br>
toUpperCase:${fn:toUpperCase(String)}<br>
substring:${fn:substring(String,5,11)}<br>
substringAfter:${fn:substringAfter(String,"to")}<br>
Length of the string is:${fn:length(String)}
</body>
</html>
OUTPUT::

25
ENTERPRISE JAVA BNN COLLEGE

PRACTICAL 6
Aim::Implement the following EJB Applications.
A::Create a Currency Converter application using EJB.

INPUT::
Index.html::
<html>
<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" value="RESET">
<input type="submit" value="CONVERT" >
</form>
</body>
</html>
CCBean.java::
package mybean;
import javax.ejb.Stateless;
@Stateless
public class CCBean
{
public CCBean(){}
public double r2Dollar(double r)
{
return r/65.65;
}
public double d2Rupees(double d)
{
return d*65.65;
}
}

26
ENTERPRISE JAVA BNN COLLEGE

CCServlet.java::
import mybean.CCBean;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.ejb.EJB;
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.r2Dollar(amt)+" Dollars</h1>");
}
if(request.getParameter("type").equals("d2r"))
{
out.println("<h1>"+amt+ " Dollars = "+obj.d2Rupees(amt)+" Rupees</h1>");
}
}
}
OUTPUT::

27
ENTERPRISE JAVA BNN COLLEGE

B::Develop a Simple Room Reservation System Application using EJB.

INPUT::
Index.html::
<html><head><title>Hotel</title></head><body>
<h1>Enter the Details for Room Reservation</h1><br> <form action="reserver" method="POST"> Enter
Your Name:
<input type="text" name="tname"><br>
Enter Your Address:
<input type="text" name="tadd"><br>
Enter Your Phone Number:
<input type="text" name="tphone" ><br>
Enter Room Type:
<select name="troom">
<option id="g">GENERAL</option>
<option id="d">DELUXE</option>
<option id="s">SUITE</option>
</select><br>
Enter CheckIn Date:
<input type="text" name="tin"><br>
Enter CheckOut Date:
<input type="text" name="tout"><br>
Enter Payment Mode:
<select name="tpay">
<option id="c">CASH</option>
<option id="e">CREDIT CARD</option>
</select><br>
<input type="submit" value="SUBMIT"><br>
</form>
</body>
</html>

28
ENTERPRISE JAVA BNN COLLEGE

Reservation.java::
import ejb.Details;
import java.io.*;
import java.util.ArrayList;
import javax.servlet.*;
import javax.servlet.annotation.WebServlet; import javax.servlet.http.*; import javax.ejb.EJB;
public class reserver extends HttpServlet
{
Details d=new Details();
protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException,
IOException
{
PrintWriter out = response.getWriter();
String cname=request.getParameter("tname");
String cadd=request.getParameter("tadd");
String cph=request.getParameter("tphone");
String croom=request.getParameter("troom");
String chin=request.getParameter("tin");
String chout=request.getParameter("tout");
String cmode=request.getParameter("tpay");
ArrayList<String> a=d.reserve(cname,cadd,cph,croom,chin,chout,cmode);
out.println("<html><body><h2>");
try
{
out.println(d.welmsg(cname)+"<br>");
out.println(d.rtype(croom)+"<br>");
out.println(d.roompay(croom)+"<br>");
out.println("----Ur Details --- <br>");
out.println("<table border=1><tr><th>Name</th><th>Address </th><th>PhoneNo.</th><th>Room
Type</th><th>ChechIn Date</th><th>CheckOut Date</th><th>Payment Mode</th></tr>");
out.println("<tr>");
int i;
for(i=0;i<7;i++){
out.println("<td>" +a.get(i)+ "</td>");

29
ENTERPRISE JAVA BNN COLLEGE

}
out.println("</tr></table>");
}
catch(Exception e){
out.println(e);
}
out.println("</h2></body></html>");
}
}
DETAILS.JAVA::
package ejb;
import
java.util.ArrayList;
public class
Details{
public String welmsg(String cust){
return "Hello" + " " + cust.toUpperCase()+ " "+"Welcome to Our Hotel";
}
public String rtype(String rt){
return "You Have Selected" + " " + rt.toUpperCase()+" " +"Room";
}
public String roompay(String rt)
{
if(rt.equalsIgnoreCase("SUITE"))
{
return "You have To Pay 8000Rs Only";
}
else if(rt.equalsIgnoreCase("DELUXE"))
{
return "You have To Pay 4000Rs Only";
}
else
{
return "You Have To Pay 2000Rs Only";}}
30
ENTERPRISE JAVA BNN COLLEGE

public ArrayList<String> reserve(String cust,String add,String ph,String checkin,String


checkout,Stringrt1,String pyr)
{
ArrayList<String> a=new
ArrayList();a.add(cust);
a.add(add);
a.add(ph);
a.add(che
ckin);
a.add(che
ckout);
a.add(rt1);
a.ad
d(py
r);
retur
n a;
}}
OUTPUT::

31
ENTERPRISE JAVA BNN COLLEGE

PRACTICAL 7
Aim::Implement the following EJB Applications with different types of Beans.
A::Develop simple EJB application to demonstrate Servlet Hit count using Singleton Session Beans.
INPUT::
Index.html::
<html>
<head>
<meta http-equiv="Refresh" content="0; URL=ServletClient">
</head
</html>
ServletClient.java::
import ejb.HitsBean;
import java.io.IOException;
import java.io.PrintWriter;
import javax.ejb.EJB;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class
ServletClient extends HttpServlet {
@EJB
HitsBean counter;
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException
{
PrintWriter out= res.getWriter();
try
{
out.print("<h1> number of times this servlet is accessed: </h1>" + counter.getHitCnt());
}
finally
{
out.close();
}
}
}

32
ENTERPRISE JAVA BNN COLLEGE

HitsBean.java::
package ejb;
import javax.ejb.Singleton;
@Singleton
public class HitsBean
{
private int hitcnt;
public int getHitCnt()
{
return hitcnt++;
}
}
OUTPUT::

➢ AFTER 3 TIME REFRESHING THE PAGE::

33
ENTERPRISE JAVA BNN COLLEGE

B::Develop simple Marks Entry Application to demonstrate accessing Database using EJB.

INPUT::
Index.html::
<html><body>
<form action="MarkEntrySrv" method="get"> Enter Roll No.:<input type="text" name="sno"><br>
Enter Student Name:<input type="text" name="name"><br> Enter Marks(EJ):<input type="text"
name="m1"><br> Enter marks(AWP:<input type="text" name="m2"><br> <input type="submit"
value="Submit"> </form>
</body></html>
MarkEntrySrv.java::
import ejb.MarksEntry;
import java.io.*;
import javax.ejb.EJB;
import javax.servlet.*;
import javax.servlet.http.*;
public class MarkEntrySrv extends HttpServlet {
@EJB
MarksEntry bean;
public void doGet(HttpServletRequest req,HttpServletResponse res)throws IOException,ServletException{
PrintWriter out=res.getWriter();
String id,name,p1,p2;
id=req.getParameter("srno");
name=req.getParameter("name");
p1=req.getParameter("m1");
p2=req.getParameter("m2");
bean.entry(id, name, p1, p2);
out.print(bean.submit(name));
}}
MarksEntry.java::
package ejb;
import java.sql.*;
import javax.ejb.Stateless;
@Stateless
public class MarksEntry{

34
ENTERPRISE JAVA BNN COLLEGE

public void entry(String srno,String sname,String p1,String p2){


try{
Class.forName("com.mysql.jdbc.Driver"); Connection
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql","root ","system");
PreparedStatement ps=con.prepareStatement("insert into student values(?,?,?,?)");
ps.setString(1,srno);
ps.setString(2,sname);
ps.setString(3,p1);
ps.setString(4,p2);
ps.executeUpdate();
}
catch(Exception e){
System.out.print(e);
}}
public String submit(String name){
return(name.toUpperCase()+ " record submitted successfully!!");
}}
OUTPUT::

35
ENTERPRISE JAVA BNN COLLEGE

PRACTICAL 8
Aim::Implement the following Hibernate application.
A::Develop a Hibernate application to store and retrieve employee details in MySQL Database.

➢ When your Creating a project for Hibernate at that the below Frame Checkbox should be Selected.
Steps::
Create new App>>Java Web>>Web Application>>Project Name>>Selecct the Hibernate Checkbox>>Create
Database Connection>>Click on finish.

INPUT::
Emp2.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="mypack.employee">
<id name="id" column="id">
<generator class="assigned"></generator> </id>
<property name="fname" column="firstname"></property>
<property name="lname" column="lastname"></property></class>
</hibernate-mapping>
Employee.java
package mypack;
public class employee {
private int id;
private String fname,lname;
public int getId() {
return id; }
public void setId(int id) {
this.id = id; }
public String getFname() {
return fname;

36
ENTERPRISE JAVA BNN COLLEGE

}
public void setFname(String fname) {
this.fname = fname;
}
public String getLname() {
return lname;
}
public void setLname(String lname) {
this.lname = lname;
}}
Store.java
package mypack;
import org.hibernate.cfg.Configuration;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.Session;
public class store {
public static void main(String[] args) {
Configuration cfg1=new Configuration().configure("hibernate.cfg.xml");
SessionFactory s=cfg1.buildSessionFactory();
Session s1= s.openSession();
Transaction t=s1.beginTransaction();
employee e=new employee();
e.setId(2);
e.setFname("abc");
e.setLname("xyz");
s1.save(e);
t.commit();
s1.close();
}}
Hybernet.cfg.xml:
➢ Source:
<hibernate-configuration>
<session-factory>
37
ENTERPRISE JAVA BNN COLLEGE

<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>

<property name="hibernate.connection.url">jdbc:mysql://localhost:3307/mysql?zeroDat
eTimeBehavior=convertToNull</property>
<property name="hibernate.connection.username">root</property> <property
name="hibernate.connection.password">system</property> <property
name="hibernate.hbm2ddl.auto">update</property> <property
name="hibernate.sql_show">true</property> <mapping resource="emp.hbm.xml"/>
</session-factory>
</hibernate-configuration>
Graphical view of Hybernet.cfg.xml:

Output:-

38
ENTERPRISE JAVA BNN COLLEGE

B:: Develop a Hibernate application to store Feedback of Website Visitor in MySQL Database.

INPUT::
Index.html::
<html> <body>
<h1>Website Feedback Form for google.con </h1>
<form action="fb.jsp" >
Enter Your Name: <input type="text" name="name" ><br>
Enter Your Message : <textarea rows="10" cols="50" name="message" ></textarea><br>
<input type="submit" value="Submit My FeedBack " >
</form>
</body> </html>
fb.jsp::

<%@page import="org.hibernate.*, org.hibernate.cfg.*, mypack.*" %>


<%! SessionFactory sf;

org.hibernate.Session hibSession;

%>
<%
sf = new Configuration().configure().buildSessionFactory();
hibSession = sf.openSession();
Transaction tx = null;
GuestBookBean gb = new GuestBookBean();
try{
tx = hibSession.beginTransaction();
String username = request.getParameter("name");
String usermsg = request.getParameter("message");
String nowtime = ""+new java.util.Date();
gb.setVisitorName(username);
gb.setMsg(usermsg);
gb.setMsgDate(nowtime);
hibSession.save(gb);
tx.commit();
out.println("Thank You for your valuable feedback....");
}catch(Exception e){out.println(e);}
hibSession.close();
%>

39
ENTERPRISE JAVA BNN COLLEGE

GuestBookBean::

package mypack;

import javax.persistence.*;

@Entity

@Table(name="guestbook")

public class GuestBookBean implements java.io.Serializable {

@Id

@GeneratedValue

@Column(name="vno")

private Integer visitorNo;

@Column(name="vname")

private String visitorName;

@Column(name="msg")

private String msg;

@Column(name="mdate")

private String msgDate;

public GuestBookBean() { }

public Integer getVisitorNo() { return visitorNo; }

public String getVisitorName() { return visitorName; }

public String getMsg() { return msg; }

public String getMsgDate() { return msgDate; }

public void setVisitorNo(Integer vn) { visitorNo = vn ; }

public void setVisitorName(String vn) { visitorName = vn; }

public void setMsg(String m) { msg = m; }

public void setMsgDate(String md) { msgDate=md; }

40
ENTERPRISE JAVA BNN COLLEGE

Hibernet.cfg.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property
name="hibernate.connection.url">jdbc:mysql://localhost:3306/feedbackdb?zeroDat
eTimeBehavior=convertToNull</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">hassan11</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<mapping class=="mypack.GuestBookBean"/>
</session-factory>
</hibernate-configuration>

SQL Query:

create database feedbackdb;

create table GuestBook(

vno int PRIMARY KEY AUTO_INCREMENT,

vname varchar(50),

msg varchar(100),

mdate varchar(50)

41
ENTERPRISE JAVA BNN COLLEGE

Graphical view of Hibernet.cfg.xml::

OUTPUT::

DataBase::

42

You might also like