Sunteți pe pagina 1din 46

Prachi Thakkar 150160107112

INDEX
Sr Date Title Page Sign
No No
1 Create chat application using either TCP or UDP protocol. 02
2 Implement TCP Server for transferring files using Socket and 04
ServerSocket.
3 Implement any one sorting algorithm using TCP/UDP on Server 07
application. Give input on client side and client should get sorted
output from server and display sorted on input side.
4 Implement concurrent TCP Server Programming in which more than 10
one client can connect and communicate with Server for sending the
string and Server returns the reverse of string to each client.

5 Write a program to use Statement object to make JDBC connectivity. 14

6 Write a program to make use of the PreparedStatement object to 16


insert student records to database.
7 Write a program to utilize a stored procedure in a Java program using 19
CallableStatement object.
8 Create a simple servlet which will display the information send 21
from an HTML page.
9 Create login form and perform state management using cookies and 23
HttpSession.
10 Create a servlet that will make use of the request dispatcher. 28
11 Create a servlet which will display information of the HTTP Request 31
Headers.
12 Implement authentication filter using filter API. 33
13 Create a web service which provides student information. 36
14 Create a login form and enter in the application with proper username 38
and password. If password is correct then only allow access to the
application otherwise direct back to the login screen. Perform this
with the help of JSP.

15 Study and implement Hibernate. 41

1|Page
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 01

AIM: Create chat application using either TCP or UDP protocol.


CODE: Using TCP
---------------------------------------------------------------------------------------------------------------------
Server Code:
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Server {
public static void main(String[] args) throws Exception
{
ServerSocket ss=new ServerSocket(7888);
Socket s=ss.accept();
DataInputStream din=new DataInputStream(s.getInputStream());
String str;
str=din.readUTF();
System.out.println("Client:\t"+str);
DataOutputStreamd out=new DataOutputStream(s.getOutputStream());
DataInputStream msg=new DataInputStream(System.in);
while(true)
{
str=din.readUTF();
System.out.print("Client:\t"+str);
System.out.print("Server:\t");
str=msg.readLine();
Sytem.out.println(str);
}
}
}
---------------------------------------------------------------------------------------------------------------------
Client Code:
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.net.Socket;
import java.util.Scanner;

public class Client


{
public static void main(String[] args) throws Exception{
Socket s=new Socket("127.0.0.1",7888);
if(s.isConnected())

2|Page
CE-B
Prachi Thakkar 150160107112

{
System.out.println("Connected to server");
}
DataInputStream msg=new DataInputStream(System.in);
String str="Start Chat..............................................................................................";
DataOutputStream dout=new DataOutputStream(s.getOutputStream());
dout.writeUTF(str);
System.out.println(str);
DataInputStream din=new DataInputStream(s.getInputStream());
while(true)
{
System.out.print("Client:\t");
str=msg.readLine();
dout.writeUTF(str+"\n");
str=din.readUTF();
System.out.println("Server:\t"+str);
}
}
}

OUTPUT:

Server:

Client:

3|Page
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 02

AIM: Implement TCP Server for transferring files using Socket and ServerSocket.
CODE:
-------------------------------------------------------------------------------------------------------------------------------
Server Code:
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.net.*;
class Server
{
public static void main(String args[]) throws Exception
{
ServerSocket ss=new ServerSocket(7777);
Socket s=ss.accept();
System.out.println("connected..........");
FileInputStream fin=new FileInputStream("Send.txt");
DataOutputStreamd out=new DataOutputStream(s.getOutputStream());
int r;
while((r=fin.read())!=-1)
{
dout.write(r);

}
System.out.println("\nFiletranfer Completed");
s.close();
ss.close();
}
}

--------------------------------------------------------------------------------
Client Code:
--------------------------------------------------------------------------------
import java.io.*;
import java.net.*;
public class Client {

public static void main(String[] args) throws Exception


{
Socket s=new Socket("127.0.0.1",7777);
if(s.isConnected())
{
System.out.println("Connected to server");

4|Page
CE-B
Prachi Thakkar 150160107112

}
FileOutputStream fout= new FileOutputStream("received.txt");
DataInputStream din=new DataInputStream(s.getInputStream());
int r;
while((r=din.read())!=-1)
{
fout.write((char)r);
}
s.close();
}
}

OUTPUT:

Server

Client

5|Page
CE-B
Prachi Thakkar 150160107112

Sent File

Received File

6|Page
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 03

AIM: Implement any one sorting algorithm using TCP/UDP on Server application.
Give input on client side and client should get sorted output from server and
display sorted on input side.
CODE:
-------------------------------------------------------------------------------------------------------------------------------
Server Code:
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.net.*;
import java.util.*;
class Server
{
public static void main(String args[]) throws Exception
{
ServerSocket ss=new ServerSocket(7777);
Socket s=ss.accept();
System.out.println("connected..........");
DataInputStream din=new DataInputStream(s.getInputStream());
DataOutputStream dout=new DataOutputStream(s.getOutputStream());
int r,i=0;
int n=din.readInt();
int a[]=new int[n];
System.out.println("data:");
int count=0;
System.out.println("Receiving Data....");
for(i=0;i<n;i++)
{
a[i]=din.readInt();
}
System.out.println("Data Received");
System.out.println("Sorting Data........");
Arrays.sort(a);
System.out.println("Data Sorted");
System.out.println("Sending Data........");
for(i=0;i<n;i++)
{
dout.writeInt(a[i]);
}
System.out.println("\nData Sent Successfully");
s.close();
ss.close();

7|Page
CE-B
Prachi Thakkar 150160107112

}
}

---------------------------------------------------------------------------------------------------------------------
Client Code:
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Client {

public static void main(String[] args) throws Exception


{
Socket s=new Socket("127.0.0.1",7777);
if(s.isConnected())
{
System.out.println("Connected to server");
}
System.out.println("Enter size of array:");
Scanner scanner=new Scanner(System.in);
int n=scanner.nextInt();
int a[]=new int[n];
System.out.println("Enter element to array:");
DataOutputStream dout=new DataOutputStream(s.getOutputStream());
dout.writeInt(n);
for(int i=0;i<n;i++)
{
int r=scanner.nextInt();;
dout.writeInt(r);
}
System.out.println("Data Sent");
DataInputStream din=new DataInputStream(s.getInputStream());
int r;
System.out.println("Receiving Sorted Data....");
for(int i=0;i<n;i++)
{
r=din.readInt();
System.out.print(r+" ");
}
s.close();
}
}

8|Page
CE-B
Prachi Thakkar 150160107112

OUTPUT:

Server

Client

9|Page
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 04

AIM: Implement concurrent TCP Server Programming in which more than one
client can connect and communicate with Server for sending the string and Server
returns the reverse of string to each client.
CODE:
-------------------------------------------------------------------------------------------------------------------------------
Server Code:
---------------------------------------------------------------------------------------------------------------------
import java.net.*;
import java.io.*;

public class Server


{
public static void main(String[] args)throws Exception
{
int count=1;
System.out.println("Server is running...................");
ServerSocket ss=new ServerSocket(7878);
while(true)
{
new RevThread(ss.accept(),count).start();
System.out.println(count+" client connected");
count++;
}
}
}

class RevThread extends Thread


{
Socket s=null;
int n;
public RevThread(Socket socket,int count)
{
s=socket;
n=count;
}
public void run()
{
try
{
while(true)

10 | P a g e
CE-B
Prachi Thakkar 150160107112

{
System.out.println("receiving from client "+n);
DataInputStream din=new DataInputStream(s.getInputStream());
String str=din.readUTF();
System.out.println("processing data of Client "+n);
StringBuffer rev=new StringBuffer();
rev=rev.append(str);
rev=rev.reverse();
String revStr=new String(rev);
System.out.println("sending to client "+n);
DataOutputStream dout=new DataOutputStream(s.getOutputStream());
dout.writeUTF(revStr);
}
}
catch(IOException e)
{
System.out.println(e);
}
}
}
---------------------------------------------------------------------------------------------------------------------
Client Code:
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.net.*;
public class Client
{
public static void main(String[] args) throws Exception
{
Socket s=new Socket("127.0.0.1",7878);
if(s.isConnected())
{
System.out.println("Connected to Server....");
}
while(true)
{
System.out.println("Enter String to reverse:");
DataInputStream in=new DataInputStream(System.in);
String str=in.readLine();
DataOutputStream dout=new DataOutputStream(s.getOutputStream());
dout.writeUTF(str);

DataInputStream din=new DataInputStream(s.getInputStream());


String rev=din.readUTF();
System.out.println("Reversed String:\t"+rev);

11 | P a g e
CE-B
Prachi Thakkar 150160107112

}
}
}

OUTPUT:

Server

12 | P a g e
CE-B
Prachi Thakkar 150160107112

Client 1

Client 2

13 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 05

AIM: Write a program to use statement object to make JDBC connectivity.


CODE:
---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>
<servlet>
<servlet-name>practical5</servlet-name>
<servlet-class>practical5</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>practical5</servlet-name>
<url-pattern>/practical5</url-pattern>
</servlet-mapping>
</web-app>
---------------------------------------------------------------------------------------------------------------------
Practical5.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class practical5 extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response) throws
IOException,ServletException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection
cn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","system","ankita");
Statement st=cn.createStatement();
String q="select * from Student";
ResultSet rs=st.executeQuery(q);
14 | P a g e
CE-B
Prachi Thakkar 150160107112

out.println("Roll_No Name<br/>");
while(rs.next())
{
out.println(rs.getInt(1)+" "+rs.getString(2)+"<br/>");
}
}
catch(ClassNotFoundException e){}
catch(SQLException e){}
}
}

OUTPUT:

15 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 06

AIM: Write a program to make use of the PreparedStatement object to insert


student records to database.
CODE:
-------------------------------------------------------------------------------------------------------------------------------
Input.html
---------------------------------------------------------------------------------------------------------------------
<html>
<form method="get" action="practical6">
Enter Roll_no: <input type="number" name="rno"/><br/>
Enter Name: <input type="text" name="name"></br>
<input type="Submit" value="Insert"/>
</form>
</html>
---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>
<servlet>
<servlet-name>practical6</servlet-name>
<servlet-class>practical6</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>practical6</servlet-name>
<url-pattern>/practical6</url-pattern>
</servlet-mapping>
</web-app>
---------------------------------------------------------------------------------------------------------------------
Practical6.html
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class practical6 extends HttpServlet
{

16 | P a g e
CE-B
Prachi Thakkar 150160107112

public void doGet(HttpServletRequest request,HttpServletResponse response) throws


IOException,ServletException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection
cn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","system","ankita");
String q;
q="insert into Student values(?,?)";
PreparedStatement ps= cn.prepareStatement(q);
int roll_no=Integer.parseInt(request.getParameter("rno"));
ps.setInt(1,roll_no);
String name=request.getParameter("name");
ps.setString(2,name);
int x=ps.executeUpdate();

if(x==1)
{
out.println("Row inserted <br/>");
}
else
{
out.println("Row not inserted");
}
}
catch(ClassNotFoundException e){}
catch(SQLException e){}
}
}

17 | P a g e
CE-B
Prachi Thakkar 150160107112

OUTPUT:

18 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 07

AIM: Write a program to utilize a stored procedure in a Java program using


CallableStatement object.
CODE:
---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>
<servlet>
<servlet-name>practical7</servlet-name>
<servlet-class>practical7</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>practical7</servlet-name>
<url-pattern>/practical7</url-pattern>
</servlet-mapping>
</web-app>

---------------------------------------------------------------------------------------------------------------------
Practical7.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class practical7 extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response) throws
IOException,ServletException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection
cn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","system","ankita");

19 | P a g e
CE-B
Prachi Thakkar 150160107112

String proc="? call addition(?,?)";


CallableStatement cs=cn.prepareCall("{?=call addition(?,?)}");
cs.registerOutParameter(1,Types.INTEGER);
cs.setInt(2,5);
cs.setInt(3,10);
cs.execute();
int ans=cs.getInt(1);
out.println("Addition is "+ans);
}
catch (Exception e){}
}
}

OUTPUT:

20 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 08

AIM: Create a simple servlet which will display the information send from an
HTML page.
CODE:
---------------------------------------------------------------------------------------------------------------------
Input.html:
---------------------------------------------------------------------------------------------------------------------
<html>
<form method="get" action="practical8">
Enter your name: <input type="text" name="name"/></br>
Enter your enroll-number: <input type="text" name="eno"/></br>
Enter college name: <input type="text" name="coll"/></br>
<input type="Submit"/>
</form>
</html>
---------------------------------------------------------------------------------------------------------------------
Web.xml:
---------------------------------------------------------------------------------------------------------------------
<web-app>
<servlet>
<servlet-name>practical8</servlet-name>
<servlet-class>practical8</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>practical8</servlet-name>
<url-pattern>/practical8</url-pattern>
</servlet-mapping>
</web-app>
---------------------------------------------------------------------------------------------------------------------
Practical8.java:
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class practical8 extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)throws
IOException,ServletException

21 | P a g e
CE-B
Prachi Thakkar 150160107112

{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
String name,enroll_no,college;
name=request.getParameter("name");
out.println("Name: "+name+"</br>");
enroll_no=request.getParameter("eno");
out.println("Enrollment Number: "+enroll_no+"</br>");
college=request.getParameter("coll");
out.println("College: "+college+"</br>");
}
}

OUTPUT:

22 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 09

AIM: Create login form and perform state management using cookies and
HttpSession.
CODE:
I. Using Cookies

---------------------------------------------------------------------------------------------------------------------
Input.html
---------------------------------------------------------------------------------------------------------------------
<form method="post" action="validate">
Name:<input type="text" name="user" /><br/>
Password:<input type="text" name="pass" ><br/>
<input type="submit" value="submit">
</form>

---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>
<servlet>
<servlet-name>validate</servlet-name>
<servlet-class>MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>validate</servlet-name>
<url-pattern>/validate</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>First</servlet-name>
<servlet-class>First</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>First</servlet-name>
<url-pattern>/First</url-pattern>
</servlet-mapping>

<welcome-file-list>
<welcome-file>input.html</welcome-file>
</welcome-file-list>
</web-app>

23 | P a g e
CE-B
Prachi Thakkar 150160107112

---------------------------------------------------------------------------------------------------------------------
MyServlet.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class MyServlet extends HttpServlet {

protected void doPost(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
String name = request.getParameter("user");
String pass = request.getParameter("pass");

if(pass.equals("1234"))
{
Cookie ck = new Cookie("username",name);
response.addCookie(ck);
response.sendRedirect("First");
}
}
}

---------------------------------------------------------------------------------------------------------------------
First.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class First extends HttpServlet


{
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
Cookie[] cks = request.getCookies();
out.println("Welcome "+cks[0].getValue());
}
}

24 | P a g e
CE-B
Prachi Thakkar 150160107112

OUTPUT:

II. Using HttpSession:

---------------------------------------------------------------------------------------------------------------------
Index.html
---------------------------------------------------------------------------------------------------------------------
<form method="post" action="Validate">
User: <input type="text" name="user" /><br/>
Password: <input type="text" name="pass" ><br/>
<input type="submit" value="submit">
</form>

---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>

<servlet>
<servlet-name>Validate</servlet-name>
<servlet-class>Validate</servlet-class>
</servlet>

25 | P a g e
CE-B
Prachi Thakkar 150160107112

<servlet>
<servlet-name>Welcome</servlet-name>
<servlet-class>Welcome</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>Validate</servlet-name>
<url-pattern>/Validate</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Welcome</servlet-name>
<url-pattern>/Welcome</url-pattern>
</servlet-mapping>

<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>

</web-app>
---------------------------------------------------------------------------------------------------------------------
Validate.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class Validate extends HttpServlet {

protected void doPost(HttpServletRequest request, HttpServletResponse response)


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

String name = request.getParameter("user");


String pass = request.getParameter("pass");

if(pass.equals("1234"))
{
//creating a session
HttpSession session = request.getSession();
session.setAttribute("user", name);
response.sendRedirect("Welcome");
}
}
}

---------------------------------------------------------------------------------------------------------------------

26 | P a g e
CE-B
Prachi Thakkar 150160107112

Welcome.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class Welcome extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
HttpSession session = request.getSession();
String user = (String)session.getAttribute("user");
out.println("Hello "+user);
}
}

OUTPUT:

27 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 10

AIM: Create a servlet that will make use of the request dispatcher.
CODE:
---------------------------------------------------------------------------------------------------------------------
Input.html
---------------------------------------------------------------------------------------------------------------------
<html>
<form method="get" action="practical10">
Enter username: <input type="text" name="uname"/></br>
Enter password: <input type="password" name="pwd"/></br>
<input type="Submit"/>
</form>
</html>
---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>
<servlet>
<servlet-name>practical10</servlet-name>
<servlet-class>practical10</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>practical10</servlet-name>
<url-pattern>/practical10</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>Servlet2</servlet-name>
<servlet-class>Servlet2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Servlet2</servlet-name>
<url-pattern>/Servlet2</url-pattern>
</servlet-mapping>
</web-app>

---------------------------------------------------------------------------------------------------------------------
Practical10.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;

28 | P a g e
CE-B
Prachi Thakkar 150160107112

import javax.servlet.*;
import javax.servlet.http.*;
public class practical10 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse res)throws
IOException,ServletException
{
res.setContentType("text/html");
PrintWriter out=res.getWriter();
String user=req.getParameter("uname");
String pass=req.getParameter("pwd");
if(pass.equals("anki2398"))
{
RequestDispatcher rd=req.getRequestDispatcher("Servlet2");
rd.forward(req,res);
}
else
{
RequestDispatcher rd=req.getRequestDispatcher("input.html");
out.println("Invalid username or password...");
rd.include(req,res);
}
}
}
---------------------------------------------------------------------------------------------------------------------
Servlet2.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Servlet2 extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse res)throws
IOException,ServletException
{
res.setContentType("text/html");
PrintWriter out=res.getWriter();
String name=req.getParameter("uname");
out.println("Welcome "+name);
}
}

29 | P a g e
CE-B
Prachi Thakkar 150160107112

OUTPUT:

30 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 11

AIM: Create a servlet which will display information of the HTTP Request
Headers.
CODE:
---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>
<servlet>
<servlet-name>practical11</servlet-name>
<servlet-class>DisplayHeader</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>practical11</servlet-name>
<url-pattern>/practical11</url-pattern>
</servlet-mapping>
</web-app>
---------------------------------------------------------------------------------------------------------------------
DisplayHeader.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;

public class DisplayHeader extends HttpServlet {


public void doGet(HttpServletRequest request, HttpServletResponse response)throws
ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String title = "HTTP Header Request Example";
String docType =
"<!doctype html public \"-//w3c//dtd html 4.0 " + "transitional//en\">\n";

out.println(docType +
"<html>\n" +
"<head><title>" + title + "</title></head>\n"+

31 | P a g e
CE-B
Prachi Thakkar 150160107112

"<body bgcolor = \"#f0f0f0\">\n" +


"<h1 align = \"center\">" + title + "</h1>\n" +
"<table width = \"100%\" border = \"1\" align = \"center\">\n" +
"<tr bgcolor = \"#949494\">\n" +
"<th>Header Name</th><th>Header Value(s)</th>\n"+
"</tr>\n"
);

Enumeration headerNames = request.getHeaderNames();


while(headerNames.hasMoreElements()) {
String paramName = (String)headerNames.nextElement();
out.print("<tr><td>" + paramName + "</td>\n");
String paramValue = request.getHeader(paramName);
out.println("<td> " + paramValue + "</td></tr>\n");
}
out.println("</table>\n</body></html>");
}
public void doPost(HttpServletRequest request, HttpServletResponse response)throws
ServletException, IOException
{
doGet(request, response);
}
}

OUTPUT:

32 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 12

AIM: Implement authentication filter using filter API.


CODE:
---------------------------------------------------------------------------------------------------------------------
Index.html
---------------------------------------------------------------------------------------------------------------------
<form action="servlet1">
Name:<input type="text" name="name"/><br/>
Password:<input type="password" name="password"/><br/>
<input type="Submit" value="Login">
</form>
---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>

<servlet>
<servlet-name>AdminServlet</servlet-name>
<servlet-class>AdminServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AdminServlet</servlet-name>
<url-pattern>/servlet1</url-pattern>
</servlet-mapping>

<filter>
<filter-name>f1</filter-name>
<filter-class>MyFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>f1</filter-name>
<url-pattern>/servlet1</url-pattern>
</filter-mapping>

</web-app>

33 | P a g e
CE-B
Prachi Thakkar 150160107112

---------------------------------------------------------------------------------------------------------------------
MyFilter.java
---------------------------------------------------------------------------------------------------------------------
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.*;

public class MyFilter implements Filter


{
public void init(FilterConfig arg0) throws ServletException {}

public void doFilter(ServletRequest req,ServletResponse resp,FilterChain chain)throws


IOException, ServletException
{
PrintWriter out=resp.getWriter();
String password=req.getParameter("password");
if(password.equals("admin"))
{
chain.doFilter(req, resp);
}
else
{
out.println("username or password error!");
RequestDispatcher rd=req.getRequestDispatcher("index.html");
rd.include(req, resp);
}

}
public void destroy() {}
}

---------------------------------------------------------------------------------------------------------------------
AdminServlet.java
---------------------------------------------------------------------------------------------------------------------
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.*;

public class AdminServlet extends HttpServlet{


public void doGet(HttpServletRequest request, HttpServletResponse response)throws
ServletException, IOException
{

34 | P a g e
CE-B
Prachi Thakkar 150160107112

response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name=request.getParameter("name");
out.print("Welcome "+name);
}
}

OUTPUT:

35 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 13
AIM: Create a web service which provides student information.
CODE:
------------------------------------------------------------------------------------------------------------------------------
Input.html
--------------------------------------------------------------------------------------------------------------------
<html>
<form method="get" action="practical13">
Enter your name: <input type="text" name="name"/></br>
Enter your enroll-number: <input type="text" name="eno"/></br>
Enter your sem: <input type="text" name="sem"/><br/>
Enter your branch: <input type="text" name="branch"/><br/>
Enter college name: <input type="text" name="coll"/></br>
<input type="Submit"/>
</form>
</html>
---------------------------------------------------------------------------------------------------------------------
Web.xml
---------------------------------------------------------------------------------------------------------------------
<web-app>
<servlet>
<servlet-name>practical13</servlet-name>
<servlet-class>practical13</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>practical13</servlet-name>
<url-pattern>/practical13</url-pattern>
</servlet-mapping>
</web-app>
---------------------------------------------------------------------------------------------------------------------
Practical13.java
---------------------------------------------------------------------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class practical13 extends HttpServlet


{
public void doGet(HttpServletRequest request,HttpServletResponse response)throws
IOException,ServletException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();

36 | P a g e
CE-B
Prachi Thakkar 150160107112

String name,enroll_no,sem,branch,college;

name=request.getParameter("name");
out.println("Name: "+name+"</br>");

enroll_no=request.getParameter("eno");
out.println("Enrollment Number: "+enroll_no+"</br>");

sem=request.getParameter("sem");
out.println("Semester: "+sem+"</br>");

branch=request.getParameter("branch");
out.println("Branch: "+branch+"</br>");

college=request.getParameter("coll");
out.println("College: "+college+"</br>");
}
}

OUTPUT:

37 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 14

AIM: Create a login form and enter in the application with proper username and
password. If password is correct then only allow access to the application
otherwise direct back to the login screen. Perform this with the help of JSP.
CODE:
---------------------------------------------------------------------------------------------------------------------
Input.html
---------------------------------------------------------------------------------------------------------------------
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>Login Page</h1>
<center>
<h2>Signup Details</h2>
<form action="LoginCheck.jsp" method="post"> <br/>
Username:<input type="text" name="username"> <br/>
Password:<input type="password" name="password"> <br/>
<input type="submit" value="Submit">
</form>
</center>
</body>
</html>
---------------------------------------------------------------------------------------------------------------------
LoginCheck.jsp
---------------------------------------------------------------------------------------------------------------------
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
String username=request.getParameter("username");
String password=request.getParameter("password");
if((username.equals("Ankita") && password.equals("123")))

38 | P a g e
CE-B
Prachi Thakkar 150160107112

{
session.setAttribute("username",username);
response.sendRedirect("Home.jsp");
}
else
{
response.sendRedirect("input.html");
}
%>
</body>
</html>
---------------------------------------------------------------------------------------------------------------------
Home.jsp
---------------------------------------------------------------------------------------------------------------------

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body bgcolor="aqua">
<br/><br/><br/><br/><br/>
<center>
<h1>
<%
String a=session.getAttribute("username").toString();
out.println("Hello "+a);
%>
</h1>
<br/> <br/> <br/><br/><br/><br/><br/>
</center>
</body>
</html>

39 | P a g e
CE-B
Prachi Thakkar 150160107112

OUTPUT:

40 | P a g e
CE-B
Prachi Thakkar 150160107112

PRACTICAL: 15

AIM: Study and implement Hibernate.


CODE:

What is Hibernate?
ORM is an object-relational mapping tool for the Java programming language. It
provides a framework for mapping an object-oriented domain model to a relational database.
Hibernate is a framework that simplifies the development of Java application to interact with the
database. It is an open source, lightweight, ORM (Object Relational Mapping) tool.
Hibernate maps the Java classes to the database tables. It also provides the data query and
retrieval facilities that significantly reduces the development time.
Hibernate is purely for persistence (to store/retrieve data from Database) operation. Hibernate
sits between traditional Java objects and database server to handle all the work in persisting those
objects based on the appropriate O/R mechanisms and patterns.

Hibernate Architecture
The Hibernate architecture includes many objects persistent object, session factory,
transaction factory, connection factory, session, transaction etc.
There are 4 layers in hibernate architecture java application layer, hibernate framework
layer, backhand API layer and database layer. Let's see the diagram of hibernate architecture:

41 | P a g e
CE-B
Prachi Thakkar 150160107112

Implementation Of Hibernate:

public class Employee {


private int id;
private String firstName;
private String lastName;
private int salary;

public Employee() {}
public Employee(String fname, String lname, int salary) {
this.firstName = fname;
this.lastName = lname;
this.salary = salary;
}

public int getId() {


return id;
}

public void setId( int id ) {


this.id = id;
}

public String getFirstName() {


return firstName;
}

public void setFirstName( String first_name ) {


this.firstName = first_name;
}

public String getLastName() {


return lastName;
}

public void setLastName( String last_name ) {


this.lastName = last_name;
}

public int getSalary() {


return salary;
}

public void setSalary( int salary ) {


this.salary = salary;

42 | P a g e
CE-B
Prachi Thakkar 150160107112

}
}

Creating table in database:


create table EMPLOYEE (
id INT NOT NULL auto_increment,
first_name VARCHAR(20) default NULL,
last_name VARCHAR(20) default NULL,
salary INT default NULL,
PRIMARY KEY (id)
);

Mapping Hibernate:
<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
<class name = "Employee" table = "EMPLOYEE">

<meta attribute = "class-description">


This class contains the employee detail.
</meta>

<id name = "id" type = "int" column = "id">


<generator class="native"/>
</id>

<property name = "firstName" column = "first_name" type = "string"/>


<property name = "lastName" column = "last_name" type = "string"/>
<property name = "salary" column = "salary" type = "int"/>

</class>
</hibernate-mapping>

Employee.java:
import java.util.List;
import java.util.Date;
import java.util.Iterator;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;
43 | P a g e
CE-B
Prachi Thakkar 150160107112

import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class ManageEmployee {


private static SessionFactory factory;
public static void main(String[] args) {

try {
factory = new Configuration().configure().buildSessionFactory();
} catch (Throwable ex) {
System.err.println("Failed to create sessionFactory object." + ex);
throw new ExceptionInInitializerError(ex);
}

ManageEmployee ME = new ManageEmployee();

/* Add few employee records in database */


Integer empID1 = ME.addEmployee("Zara", "Ali", 1000);
Integer empID2 = ME.addEmployee("Daisy", "Das", 5000);
Integer empID3 = ME.addEmployee("John", "Paul", 10000);
ME.listEmployees();

ME.updateEmployee(empID1, 5000);

ME.deleteEmployee(empID2);

ME.listEmployees();
}

/* Method to CREATE an employee in the database */


public Integer addEmployee(String fname, String lname, int salary){
Session session = factory.openSession();
Transaction tx = null;
Integer employeeID = null;

try {
tx = session.beginTransaction();
Employee employee = new Employee(fname, lname, salary);
employeeID = (Integer) session.save(employee);
tx.commit();
} catch (HibernateException e) {
if (tx!=null) tx.rollback();
e.printStackTrace();
} finally {
session.close();
}

44 | P a g e
CE-B
Prachi Thakkar 150160107112

return employeeID;
}

/* Method to READ all the employees */


public void listEmployees( ){
Session session = factory.openSession();
Transaction tx = null;

try {
tx = session.beginTransaction();
List employees = session.createQuery("FROM Employee").list();
for (Iterator iterator = employees.iterator(); iterator.hasNext();){
Employee employee = (Employee) iterator.next();
System.out.print("First Name: " + employee.getFirstName());
System.out.print(" Last Name: " + employee.getLastName());
System.out.println(" Salary: " + employee.getSalary());
}
tx.commit();
} catch (HibernateException e) {
if (tx!=null) tx.rollback();
e.printStackTrace();
} finally {
session.close();
}
}

/* Method to UPDATE salary for an employee */


public void updateEmployee(Integer EmployeeID, int salary ){
Session session = factory.openSession();
Transaction tx = null;

try {
tx = session.beginTransaction();
Employee employee = (Employee)session.get(Employee.class, EmployeeID);
employee.setSalary( salary );
session.update(employee);
tx.commit();
} catch (HibernateException e) {
if (tx!=null) tx.rollback();
e.printStackTrace();
} finally {
session.close();
}
}
/* Method to DELETE an employee from the records */
public void deleteEmployee(Integer EmployeeID){

45 | P a g e
CE-B
Prachi Thakkar 150160107112

Session session = factory.openSession();


Transaction tx = null;

try {
tx = session.beginTransaction();
Employee employee = (Employee)session.get(Employee.class, EmployeeID);
session.delete(employee);
tx.commit();
} catch (HibernateException e) {
if (tx!=null) tx.rollback();
e.printStackTrace();
} finally {
session.close();
}
}
}

OUTPUT:

$java ManageEmployee
.......VARIOUS LOG MESSAGES WILL DISPLAY HERE........

First Name: Zara Last Name: Ali Salary: 1000


First Name: Daisy Last Name: Das Salary: 5000
First Name: John Last Name: Paul Salary: 10000
First Name: Zara Last Name: Ali Salary: 5000
First Name: John Last Name: Paul Salary: 10000

In sql:
mysql> select * from EMPLOYEE;
+----+------------+-----------+--------+
| id | first_name | last_name | salary |
+----+------------+-----------+--------+
| 29 | Zara | Ali | 5000 |
| 31 | John | Paul | 10000 |
+----+------------+-----------+--------+
2 rows in set (0.00 sec

mysql>

46 | P a g e
CE-B

S-ar putea să vă placă și