0% found this document useful (0 votes)
195 views57 pages

Enterprise Java Practical

The document provides solutions for implementing simple servlet applications including a calculator application, login page, and registration form that stores data in a database. It also includes examples of using request dispatching and cookies in servlets such as tracking the number of times a user visits a page.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
Download as docx, pdf, or txt
0% found this document useful (0 votes)
195 views57 pages

Enterprise Java Practical

The document provides solutions for implementing simple servlet applications including a calculator application, login page, and registration form that stores data in a database. It also includes examples of using request dispatching and cookies in servlets such as tracking the number of times a user visits a page.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 57

P 1)Implement the following Simple Servlet application

1a)Create a simple calculator application using servlet.


Solution:-
Index.html:-
<html>
<head>
<title>simple calculator</title>

<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
</head>
<body>
<form action="Calcservlet">
<center> simple calculator </center>
Enter 1st no : <input type="text" name="t1"><br>
Enter 2nd no : <input type="text" name="t2"><br>
<input type="radio" name="op" value="+">+<br>
<input type="radio" name="op" value="-">-<br>
<input type="radio" name="op" value="*">*<br>
<input type="radio" name="op" value="/">/<br>
<input type="submit">

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

//Add a new servlet to source package//


Calcservlet :-
import java.io.IOException;
import java.io.PrintWriter;
import static java.lang.Integer.parseInt;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Calcservlet extends HttpServlet {

protected void processRequest(HttpServletRequest request,


HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
double
num1=Double.parseDouble(request.getParameter("t1"));
double
num2=Double.parseDouble(request.getParameter("t2"));
String str =request.getParameter("op");
double result =0;
if (str.equals("+"))
result = num1+num2;
else if (str.equals("-"))
result = num1-num2;
else if (str.equals("*"))
result = num1*num2;
else if (str.equals("/"))
result = num1/num2;

out.println(result);

}
}

OUTPUT:-
1B) Create a servlet for a login page. If the username and
password are correct then it says message “Hello ” else a
message “login failed”

Solution:-
Index. Html
<html>
<head>
<title>Login Form</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
</head>
<body>
<form action="LoginServletDemo">
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>
</body>
</html>

LoginServlet.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;
public class LoginServlet extends HttpServlet {

protected void processRequest(HttpServletRequest request,


HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");

@Override
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet LoginServlet</title>");
out.println("</head>");
out.println("<body>");
String uname=request.getParameter("txtID");
String upass=request.getParameter("txtpass");
if(uname.equals ("admin")&& upass.equals("12345")){

out.println("<h1>Welcome" + uname+"</h1>");
}
else out.print("<h1>Login Fail</h1>");

out.println("</body></html>");
}
}
OUTPUT:-
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.

Solution:-

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','admin@admin.com','India');


select * from user;
• Add jar file →<>\ide\modules\ext\mysql-connector-java-5.1.23-
bin.jar

Index.html
index.html
<html>
<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");
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);
}
}
}

OUTPUT:-

P2) Implement the following Servlet applications with


Cookies and Sessions.
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

<form action="servlet1" method="post">  
Name:<input type="text" name="userName"/><br/>  
Password:<input type="password" name="userPass"/><br/>  
<input type="submit" value="login"/>  
</form> 
Login.java
import java.io.*;  
import javax.servlet.*;  
import javax.servlet.http.*;  
  
  
public class Login extends HttpServlet { 
  
public void doPost(HttpServletRequest request, HttpServletResponse resp
onse)  
        throws ServletException, IOException {  
  
    response.setContentType("text/html");  
    PrintWriter out = response.getWriter();  
          
    String n=request.getParameter("userName");  
    String p=request.getParameter("userPass");  
          
    if(p.equals("servlet"){  
        RequestDispatcher rd=request.getRequestDispatcher("servlet2");  
        rd.forward(request, response);  
    }  
    else{  
        out.print("Sorry UserName or Password Error!");  
        RequestDispatcher rd=request.getRequestDispatcher("/index.html");  
        rd.include(request, response);  
                     
        }  
    }  
  
}  
WelcomeServlet.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class WelcomeServlet extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse respon
se)
throws ServletException, IOException {

response.setContentType("text/html");
PrintWriter out = response.getWriter();

String n=request.getParameter("userName");
out.print("Welcome "+n);
}
}
OUTPUT:-

P2:B) Create a servlet that uses Cookies to store the number


of times a user has visited servlet.
Solution:-
index.html
<html>
<head><title>Cookie Demo</title></head>
<body>
<form action="Pagee1" >
Enter Your Name <input type="text" name="txtName"><br>
<input type="submit" value="~~~ Click to Enter ~~~">
</form>
</body>
</html>
Pagee1.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.Cookie;

public class Pagee1 extends HttpServlet {

protected void processRequest(HttpServletRequest request,


HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet Pagee1</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet Pagee1 at " + request.getContextPath() +
"</h1>");
out.println("</body>");
out.println("</html>");
}
}

@Override
protected 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=orange>");
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 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.*;

public class Page2 extends HttpServlet {

protected void processRequest(HttpServletRequest request,


HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
/* TODO output your page here. You may use following sample code.
*/
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet Page2</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet Page2 at " + request.getContextPath() +
"</h1>");
out.println("</body>");
out.println("</html>");
}
}

@Override
protected 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>");
out.println("</body>");
out.println("</html>");}
}
}

OUTPUT:-
P2:C) 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.
Index.html
<html>
<body>
<form action="Servlet1" method="post">
<input type="text" name="userName"><br>
<input type="submit" value="go"/>
</form>
</body> </html>
Servlet1.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.*;

public class Servlet1 extends HttpServlet {

protected void processRequest(HttpServletRequest request,


HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
/* TODO output your page here. You may use following sample code.
*/
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet Servlet1</title>");
out.println("</head>");
out.println("<body>");

String n=request.getParameter("userName");
HttpSession s1=request.getSession();//it will return session object
s1.setAttribute("uname",n);//set session
out.println("<h1>NAME<br>" +n+ "</h1><br><br>");
out.println("<a href='Servlet2'>Visit2nd Page </a>");

out.println("</body>");
out.println("</html>");
}
}
Servlet2.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.*;

public class Servlet2 extends HttpServlet {

protected void processRequest(HttpServletRequest request,


HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet Servlet2</title>");
out.println("</head>");
out.println("<body>");

HttpSession s2=request.getSession(false);
String n= (String)(s2.getAttribute("uname"));

//string n=request.getparameter("username");

out.println("<h1>Name"+n+"</h1><br><br>");
out.println("<h1>Session created
at"+s2.getCreationTime()+"</h1><br><br>");

out.println("</body>");
out.println("</html>");
}
}
OUTPUT:-
Implement the Servlet IO and File applications.
P3:A) Create a Servlet application to upload and download a
file.
Solution:-
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>
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><br>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);}

Index.html

<html>

<head>

<title>File Download Page</title>

</head>

<body>

<h1>File Download Application</h1>

Click <a href="DownloadServlet?filename=SampleChapter.pdf">Sample


Chapter</a>

<br/><br/>

Click <a href="DownloadServlet?filename=TOC.pdf">Table Of


Contents</a>

</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);
}
is.close();
out.close();
}
}
OUTPUT:-

P3:-B) Develop Simple Servlet Question Answer Application


using Database.
Solution:-
Create a table in mysql
 Click on ‘Services’ tab
 Create a database
 Database name: queansdb
 Table name: queans
 Fields:
o queno integer primary key
o question varchar 200
o opt1 varchar 100
o opt2 varchar 100
o opt3 varchar 100
o opt4 varchar 100
o anskey varchar 1
Insert min 2 records
Right click on table-> click on ‘view data’ -> right click on empty dataset ->
insert a record
> click on ‘Add Row’ -> OK
add mysql connector to Libray
 click on projects tab
 right click on libraries
 click on add jar
 browse the connector ‘mysql-connector-java-5.1.23-bin’
in folder: C:\Program Files\NetBeans 8.0\ide\modules\ext
click on OK

package dbapp;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
public class QueAnsDBServlet extends HttpServlet
{
public void doGet(HttpServletRequest request, HttpServletResponse
response) throws
ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
try
{
out.print("<html><body><br>");
out.println("<form method='post' action='Marks'>");
Class.forName("com.mysql.jdbc.Driver");
Connection
con=DriverManager.getConnection("jdbc:mysql://localhost/queansdb","ro
ot","tiger");
Statement st = con.createStatement();
String sql="select * from queans";
ResultSet rs = st.executeQuery(sql);
int i=0;
out.print("<center>Online Exam</center>");
while(rs.next())
{
i++;
out.print("<br><br><hr>"+rs.getInt(1)+" ");
out.print(rs.getString(2));
out.print("<br><input type=radio name="+i+" value=1>"+rs.getString(3));
out.print("<br><input type=radio name="+i+" value=2>"+rs.getString(4));
out.print("<br><input type=radio name="+i+" value=3>"+rs.getString(5));
out.print("<br><input type=radio name="+i+" value=4>"+rs.getString(6));
String ans="ans"+i;

out.println("<br><input type=hidden name="+ans+"


value="+rs.getString(7)+">");
}
out.println("<br><input type=hidden name=total value="+i+">");
out.println("<input type=submit value=submit>");

out.println("</form>");
out.print("</body></html>");
}
catch(Exception e)
{
out.println("ERROR "+e.getMessage());
}
}
}

Marks.java

package dbapp;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class Marks extends HttpServlet
{ public void doPost(HttpServletRequest request, HttpServletResponse
response) throws
ServletException, IOException
{ response.setContentType("text/html");
PrintWriter out = response.getWriter();

try
{ out.print("<html><body>");
int total=Integer.parseInt(request.getParameter("total"));
int marks=0;
for(int i=1; i<=total; i++)
{
String sel=request.getParameter(new Integer(i).toString());
String ans=request.getParameter("ans"+i);
if (sel.equals(ans)) marks++;
}
out.println("Total Marks : "+marks);
out.print("</body></html>");
}
catch(Exception e)
{
out.println("ERROR "+e.getMessage());
}
}
}

OUTPUT:-

P4) Implement the following JSP applications.


P4:a) Develop a simple JSP application to display values
obtained from the use of intrinsic
objects of various types.
Solution:-
Test.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>
<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:-
P4:B)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).

Solution:-

<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>

Validate.jsp

<%--
Document : Validate
Created on : 31 Oct, 2022, 7:03:40 AM
Author : Rutika
--%>

<%@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;}
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:-
P4:C) Create a registration and login JSP application to
register and authenticate the user based on username and
password using JDBC.

Solution:-

Index.html

<html><head><title>New User Registration Page</title></head>


<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

<%--
Document : Register
Created on : 31 Oct, 2022, 7:32:40 AM
Author : Rutika
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>

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


<html><body>
<h1>Registration JSP Page</h1>
<%
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");
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 !!!!");
%><jsp:include page="Register.html" ></jsp:include>
<%
}
}catch(Exception e){out.println(e);}
}
else
{
out.println("<h1>Password Mismatch</h1>");
%>
<jsp:include page="Register.html" ></jsp:include>
<% }
%>

</html>
</body>
</html>
Login.html

<html>
<body>
<h1>Login Page</h1>
<form action="Login.jsp" >
Enter User Name <input type="text" name="txtName" ><br>
Enter Password <input type="password" name="txtPass" ><br>
<input type="reset" ><input type="submit" value="~~LOGIN~" >
</form>
</body>
</html>

Login.jsp

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


<html><body>
<h1>Registration JSP Page</h1>
<%
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");
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("<h1>~~~ LOGIN SUCCESSFULLL ~~~ </h1>");
}
}
else{
out.println("<h1>User Name not exist !!!!!</h1>");
%>
<jsp:include page="Register.html" ></jsp:include>
<%
}
}catch(Exception e){out.println(e);}
%>
</body></html>

OUTPUT:-
P5: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.

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.java
<%@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/empdb");
PreparedStatement stmt = con.prepareStatement("select * from emp
where empid=?");
stmt.setString(1, eno);
ResultSet rs = stmt.executeQuery();
if(rs.next()){
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>

OUTPUT:-
P5:B) . Create a JSP page to demonstrate the use of Expression
language.
Soolution:-
Index.jsp
<body>
<h3>welcome to index page</h3>
<%
session.setAttribute("user","Admin");
%>
<%
Cookie ck=new Cookie("name","mycookie");
response.addCookie(ck);
%>
<form action="ExpressionLanguage.jsp">
Enter Name:<input type="text" name="name" /><br/><br/>
<input type="submit" value="Submit"/>
</form>
</body>

ExpressionalLanguage.jsp
<body>
Welcome, ${ param.name }
Session Value is ${ sessionScope.user }
Cookie name is , ${cookie.name.value}
</body>

ELArithemeticOperator.jsp
<body>
<%-- arithmetic op --%>
5*5+4: ${5*5+4} <br>
1.4E4+1.4: ${1.4E4+1.4}<br>
10 mod 4: ${10 mod 4}<br>
15 div 3: ${15 div 3}<br>
</body>
d. ELLogicalOperator.jsp
<body>
<%-- LogicalOperator --%>
<h2>Logical Operator</h2>
true and true: ${true and true}<br>
true && false: ${true && false}<br>
true or true: ${true or true}<br>
true || false: ${true || false}<br>
not true: ${not true}<br>
!false: ${!false}
</body>

e. ELRelationalOperator.jsp
<body>
<%-- RelationalOperator --%>
<h2>Relational Operator</h2>
10.0==10: ${10.0==10} <br>
10.0 eq 10: ${10.0 eq 10} <br>
((20*10)!= 200): ${((20*10)!= 200)} <br>
3 ne 3: ${3 ne 3} <br>
3.2>=2: ${3.2>=2} <br>
3.2 ge 2: ${3.2 ge 2} <br>
2<3: ${2<3} <br>
4 lt 6: ${4 lt 6} <br>
2 <= 4: ${2 <= 4} <br>
4 le 2: ${4 le 2}
</body>
f. ELconditional op
<body>
<h2>Conditional Operator</h2>
The result of 10>2 is: "${(10>1)?'greater':'lesser'}"
</body>

g. Empty Operator
<H1>Empty Operator Example</H1>
The Value for the Empty operator is:: ${empty "txxt"}

OUTPUT:-
P6:A) Create a Currency Converter application using EJB

Solution:-
Index.html
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
</head>
<body>
<form action="CCServlet">
Enter Amount <input type="text" name="amt"><br>
Select Conversion Type
<input type="radio" name="type" value="R2D">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
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 .ejb.EJB;
import mybeans.CCBean;

public class CCServlet extends HttpServlet {


@EJB CCBean obj;
@Override
protected 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("<h>"+amt+"Rupess="+obj.R2Dollor(amt)+"Dollars</h1>");
}
if(request.getParameter("type").equals("D2R"));
{

out.println("<h>"+amt+"Dollars="+obj.D2Rupees(amt)+"Rupees</h1>");

CCBean.java
package mybeans;

import javax.ejb.Stateless;
import javax.ejb.LocalBean;

@Stateless
@LocalBean
public class CCBean {
public CCBean(){}

public double R2Dollor(double R) {


return R/65.65;
}
public double D2Rupees(double D) {
return D*65.65;
}
}
OUTPUT:-
P6:B) Develop a Simple Room Reservation System
Application Using EJB.

Create table rookbook(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
<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 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 <br> Charges = "+rs.getString(3);
}
else
{
msg = "Room "+rt+ " currently Not available";
}
}catch(Exception e){msg=""+e;}
return msg;
}
}
OUTPUT:-

P6:C) Develop simple shopping cart application using EJB


[Stateful Session Bean].
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 method="post" action="NewServlet">
<input type="number" name="items">
<select name="action">
<option value="add">Add</option>
<option value="remove">Remove</option>
<option value="check">Check</option>
</select>
<input type="submit">
</form>

</body>
</html>

NewServlet.java
import beans.NewSessionBean;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
*
* @author Rutika
*/
public class NewServlet extends HttpServlet {

NewSessionBean newSessionBean2 = lookupNewSessionBeanBean();

NewSessionBean newSessionBean1 = lookupNewSessionBeanBean();

NewSessionBean newSessionBean = lookupNewSessionBeanBean();

protected void processRequest(HttpServletRequest request,


HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
/* TODO output your page here. You may use following sample code.
*/
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet NewServlet</title>");
out.println("</head>");
out.println("<body>");
int amt= Integer.parseInt(request.getParameter("items"));
String action= request.getParameter("action");
if(action.equals("add"))
{
newSessionBean.add(amt);
out.print("items added to the cart");
}
else if(action.equals("remove"))
{
newSessionBean.remove(amt);
out.print("items remove to the cart");
}
else
{
int total= newSessionBean.check();
out.print("total cost is :"+ total);
}
out.println("</body>");
out.println("</html>");
}
}

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}

@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>

private NewSessionBean lookupNewSessionBeanBean() {


try {
Context c = new InitialContext();
return (NewSessionBean)
c.lookup("java:global/Practical6C/Practical6C-ejb/NewSessionBean!
beans.NewSessionBean");
} catch (NamingException ne) {
Logger.getLogger(getClass().getName()).log(Level.SEVERE,
"exception caught", ne);
throw new RuntimeException(ne);
}
}
}

NewSessionBean
package beans;

import javax.ejb.Stateful;
import javax.ejb.LocalBean;

@Stateful
@LocalBean
public class NewSessionBean {
private int cost;

public NewSessionBean() {
cost=0;
}

public void add(int amt) {


cost+=amt;
}

public void remove(int amt) {


cost-=amt;
}

public Integer check() {


return cost;
}

OUTPUT:-

P7:A) Develop simple EJB application to demonstrate Servlet


Hit count using Singleton Session Beans. Organization of file
in Project Folder
Solution:-
NewSessionBean.java
import javax.ejb.Singleton;
@Singleton
public class NewSessionBean implements NewSessionBeanLocal {

// Add business logic below. (Right-click in editor and choose


// "Insert Code > Add Business Method")
private int count;

@Override
public void incri() {
count= count+1;
}

@Override
public String returncount() {
return count + " ";
}

}
hits.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.ejb.EJB;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import sahyog.NewSessionBeanLocal;

public class hitpage extends HttpServlet {

@EJB
private NewSessionBeanLocal newSessionBean;

protected void processRequest(HttpServletRequest request,


HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
/* TODO output your page here. You may use following sample code.
*/
newSessionBean.incri();
out.print(newSessionBean.returncount());
}
}
OUTPUT:-

P7:B) Develop simple visitor Statistics application using


Message Driven Bean [Stateless Session Bean].
Solution:-

You might also like