Professional Documents
Culture Documents
181243107004
PRACTICAL INDEX
181243107004
PRACTICAL: 1
181243107004
Server1.java
import java.net.*;
import java.io.*;
public class Server1
{
public static void main( String args[]) throws Exception
{
ServerSocket srs = new ServerSocket(1234);
System.out.println("Server is running...");
Socket ss=srs.accept();
System.out.println("Connection Established");
Client1.java
181243107004
import java.net.*;
import java.io.*;
public class Client1
{
public static void main( String args[]) throws Exception
{
Socket cs = new Socket("localhost",1234);
String s1,s4=null;
while(!(s1=kb.readLine()).equals("exit"))
{
dos.writeBytes(s1+"\n");
s4 = br.readLine();
System.out.println("Server: "+s4);
System.out.println("Enter Text: ");
}
System.out.println("Terminated..");
cs.close();
dos.close();
kb.close();
}
}
OUTPUT:
181243107004
Server1.java
Client1.java
181243107004
PRACTICAL: 2
AIM: Implement TCP Server for transferring files using Socket and
Server Socket.
S2.java
import java.io.*;
import java.net.*;
public class S2
{
public static void main(String args[]) throws Exception
{
ServerSocket ss=new ServerSocket(1234);
Socket s = ss.accept();
System.out.println("connected...");
FileInputStream fin=new FileInputStream("send.txt");
DataOutputStream dout=new DataOutputStream(s.getOutputStream());
int r;
while((r=fin.read())!=-1)
{
dout.write(r);
}
System.out.println("\nFiletranfer Completed");
s.close();
ss.close();
}
}
C2.java
import java.io.*;
import java.net.*;
public class C2
{
public static void main(String[] args) throws Exception
{
Socket s=new Socket("127.0.0.1",1234);
if(s.isConnected())
{
System.out.println("Connected to server");
}
181243107004
while((r=din.read())!=-1)
{
fout.write((char)r);
}
s.close();
}
}
OUTPUT:
S2.java
C2.java
181243107004
PRACTICAL: 3
AIM: Implement any one sorting algorithm using TCP/UDP on Server
application and Give Input On Client side and client should sorted
output from server and display sorted on input side.
S3.java
import java.io.*;
import java.net.*;
import java.util.*;
class S3
{
public static void main(String args[]) throws Exception
{
ServerSocket ss=new ServerSocket(7777);
Socket s=ss.accept();
System.out.println("connected..........");
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........");
181243107004
for(i=0;i<n;i++)
{
dout.writeInt(a[i]);
}
System.out.println("\nData Sent Successfully");
s.close();
ss.close();
}
}
C3.java
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class C3
{
int n=scanner.nextInt();
int a[]=new int[n];
System.out.println("Enter element to array:");
for(int i=0;i<n;i++)
{
int r=scanner.nextInt();;
dout.writeInt(r);
}
System.out.println("Data Sent");
181243107004
OUTPUT:
S3.java
C3.java
181243107004
PRACTICAL: 4
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 of client.
S4.java
import java.net.*;
import java.io.*;
public class S4
{
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)
{
System.out.println("receiving from client "+n);
DataInputStream din=new DataInputStream(s.getInputStream());
String str=din.readUTF();
181243107004
C4.java
import java.io.*;
import java.net.*;
public class C4
{
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);
}
}
}
181243107004
OUTPUT:
S4.java
C4.java
PRACTICAL: 5
181243107004
Web.xml:
<servlet>
<servlet-name>Create</servlet-name>
<servlet-class>Create</servlet-class>
</servlet>
<servlet>
<servlet-name>Insert</servlet-name>
<servlet-class>Insert</servlet-class>
</servlet>
<servlet>
<servlet-name>Update</servlet-name>
<servlet-class>Update</servlet-class>
</servlet>
<servlet>
<servlet-name>DeleteV</servlet-name>
<servlet-class>DeleteV</servlet-class>
</servlet>
<servlet>
<servlet-name>DeleteT</servlet-name>
<servlet-class>DeleteT</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Create</servlet-name>
<url-pattern>/Create</url-pattern>
181243107004
</servlet-mapping>
<servlet-mapping>
<servlet-name>Insert</servlet-name>
<url-pattern>/Insert</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Update</servlet-name>
<url-pattern>/Update</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>DeleteV</servlet-name>
<url-pattern>/DeleteV</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>DeleteT</servlet-name>
<url-pattern>/DeleteT</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>
Index.html:
<html>
<head><title>Welcome</title>
<meta charset=”UTF-8”>
<meta name=”viewport’ content="width=device-width, initial-scale=1.0">
</head>
<body>
<a href=”Create”><button>Create Table</button></a></br>
181243107004
</body>
</html>
OUTPUT:
Create.html
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
181243107004
Connection conn=DriverManager.getConnection
("jdbc:ucanaccess://D:/Database31.accdb");
Statement stmt=conn.createStatement();
boolean rs=stmt.execute("create table student(firstname
varchar(10),lastname varchar(10))");
System.out.println("Create Table Sucesfully");
}
catch (ClassNotFoundException ex)
{
Logger.getLogger(Create.class.getName())
.log(Level.SEVERE, null, ex);
} catch (SQLException ex)
{
Logger.getLogger(Create.class.getName())
.log(Level.SEVERE, null, ex);
}
}
}
OUTPUT:
Insert.java:
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
181243107004
import javax.servlet.http.HttpServletResponse;
}
catch (ClassNotFoundException ex)
{
Logger.getLogger(Insert.class.getName()).log(Level.SEVERE, null, ex);
} catch (SQLException ex)
{
Logger.getLogger(Insert.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
OUTPUT:
Update.java:
import java.io.IOException;
import java.io.PrintWriter;
181243107004
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
OUTPUT:
181243107004
DeleteV.java
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
181243107004
OUTPUT:
DeleteT.java
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class DeleteT extends HttpServlet
{
181243107004
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
Connection conn=DriverManager.getConnection
("jdbc:ucanaccess://D:/Database31.accdb");
Statement stmt=conn.createStatement();
boolean rs=stmt.execute("drop table student");
out.println( "Table Deleted..");
} catch (ClassNotFoundException ex)
{
Logger.getLogger(Insert.class.getName()).log(Level.SEVERE, null, ex);
} catch (SQLException ex)
{
Logger.getLogger(Insert.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
OUTPUT:
PRACTICAL: 6
AIM: User can create a new database and also create new table under that
database. Once database has been created then user can perform database
operation by calling above functions. Use following Java Statement interface to
implement program: 1. Statement 2. Prepared statement 3. Callable statement
SqlCon.java
import java.sql.*;
import java.util.Scanner;
public class SqlCon
{
181243107004
181243107004
if(rs.next())
{
stmt.executeUpdate("delete from "+tbname+" where id="+id);
System.out.println("Data deleted");
}
else
{
System.out.println("Data with id "+id+" doesn't exsist");
}
break;
}
case 3:
{
System.out.println("Enter id of student:");
int id=scan.nextInt();
stmt.execute("CREATE PROCEDURE "+dbname+".selector (IN idr INT) "+
"BEGIN "+
"SELECT * "+
"FROM "+tbname+" "+
"WHERE id = idr; "+
"END");
CallableStatement cs = con.prepareCall("{call "+dbname+".selector(?)}");
cs.setInt(1, id);
System.out.println("procedure call sucess");
cs.execute();
ResultSet rs=cs.getResultSet();
if(rs.next())
{
System.out.println("id\tName\tBranch\tAddress");
System.out.println(rs.getInt(1)+"\t"+rs.getString(2)+"\t"+rs.getString(3)+"\t"+rs.getString(4));
}
break;
}
case 4:
{
break;
}
default:
{
System.out.println("Invalid option");
}
}
if(choice==4)
{
181243107004
break;
}
}
con.close();
}
}
OUTPUT:
PRACTICAL: 7
AIM: Create Servlet file and study web descriptor file.
Description:
Servlet is used for processing request from the web browser and create responses corresponding to
the requests received. A servlet is a java file. Various servlets mapping are performed based upon the
information available in web descriptor file.
Java web applications use a deployment descriptor file to determine how URLs map to servlets,
which URLs require authentication, and other information. This file is named web.xml, and resides
in the app's WAR under the WEB-INF/ directory. web.xml is part of the servlet standard for web
applications. It can also include information about filters that are needed to be performed when a
181243107004
A web application's deployment descriptor describes the classes, resources and configuration of the
application and how the web server uses them to serve web requests. When the web server receives a
request for the application, it uses the deployment descriptor to map the URL of the request to the
code that ought to handle the request.
The deployment descriptor is a file named web.xml. It resides in the app's WAR under the WEB-
INF/ directory. The file is an XML file whose root element is <web-app>.
web.xml file:
<servlet>
<servlet-name>Servlet 1</servlet-name>
<servlet-class>s1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Servlet 1</servlet-name>
<url-pattern>/s1</url-pattern>
</servlet-mapping>
<filter>
<filter-name>f1</filter-name>
<filter-class>filter_auth</filter-class>
</filter>
<filter-mapping>
<filter-name>f1</filter-name>
<url-pattern>/s1</url-pattern>
</filter-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>
Here, the web.xml is a file of a Filter implementation before forwarding the request to servlet “s1”.
181243107004
The file always starts with <web-app> root tag and ends with </web-app> tag. Whenever a request
to servlet “s1” is received the descriptor checks whether a filter is associated with “s1” or not. If the
filter is associated with the resource then firstly, the filter is executed. If the filter is not associated,
then the path to the servlet “s1”, defined in <url-pattern> … </url-pattern> is used to located the
servlet file.
PRACTICAL: 8
AIM: Create login form and perform state management using Cookies,
HTTPSession and URL Rewriting.
Using Cookie
index.html
<!DOCTYPE html>
<html>
<head>
<title>Form</title>
<meta charset="UTF-8">
181243107004
cookie.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class cookie extends HttpServlet
{
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name = request.getParameter("uname");
Cookie ck = new Cookie("user",name);
out.write("Your Username: "+name);
response.addCookie(ck);
out.write("<br><a href='cookie_second'>Next Page</a>");
}
}
cookie_second.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class cookie_second extends HttpServlet
{
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
Cookie[] ck = request.getCookies();
181243107004
OUTPUT:
Using HttpSession
index.html
<!DOCTYPE html>
<html>
<head>
<title>Form</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form action="http" method="POST">
Username: <input type="text" name="uname"> <br><br>
Password: <input type="password" name="pwd"> <br><br>
181243107004
<input type="submit">
</form>
</body>
</html>
http.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class http extends HttpServlet
{
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name = request.getParameter("uname");
HttpSession hs = request.getSession();
hs.setAttribute("user",name);
out.write("Your Username: "+name);
out.write("<br><a href='http_second'>Next Page</a>");
}
}
http_second.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class http_second extends HttpServlet
{
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
HttpSession hs = request.getSession(false);
String name=(String)hs.getAttribute("user");
out.write("Second Page, Your Username: "+name);
}
181243107004
OUTPUT:
index.html
<!DOCTYPE html>
<html>
<head>
<title>Form</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form action="url" method="POST">
Username: <input type="text" name="uname"> <br><br>
Password: <input type="password" name="pwd"> <br><br>
<input type="submit">
</form>
</body>
</html>
181243107004
url.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class url extends HttpServlet
{
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name = request.getParameter("uname");
out.write("Your Username: "+name);
out.write("<br><a href='url_second?user="+name+"'>Next Page</a>");
}
}
url_second.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class url_second extends HttpServlet
{
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name = request.getParameter("user");
out.write("Second Page, Your Username: "+name);
}
}
OUTPUT:
181243107004
PRACTICAL: 9
AIM: Implement Authentication filter using filter API.
index.html
<!DOCTYPE html>
<html>
<head>
<title>Authentication</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form action="servlet" method="POST">
<pre>
181243107004
</pre>
</form>
</body>
</html>
filter_auth.java
import java.io.*;
import javax.servlet.*;
else
{
out.write("Incorrect Username or Password");
}
}
public void destroy() {}
}
servlet.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
181243107004
web.xml
</servlet-mapping>
<filter>
<filter-name>f1</filter-name>
<filter-class>filter_auth</filter-class>
</filter>
<filter-mapping>
<filter-name>f1</filter-name>
<url-pattern>/servlet</url-pattern>
</filter-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>
OUTPUT:
181243107004
181243107004
PRACTICAL: 10
AIM: Create database of student subject-wise data and retrieve all
data using JSP and generate xml structure along with XML Schema
definition.
index.jsp
181243107004
</body>
</html>
xmlsheet.xml
181243107004
<name>Suresh</name>
<no>05</no>
<ajt>29</ajt>
<net>28</net>
<wt>25</wt>
<dcdr>24</dcdr>
<se>20</se>
</student>
</marks>
</it>
xslsheet.xsl
<th><center>DOT NET</center></th>
<th><center>WT</center></th>
<th><center>DCDR</center></th>
<th><center>SE</center></th>
</tr>
<xsl:for-each select="/it/marks/student">
<tr>
<td><center><xsl:value-of select="no"/></center></td>
<td><center><xsl:value-of select="name"/></center></td>
<td><center><xsl:value-of select="ajt"/></center></td>
<td><center><xsl:value-of select="net"/></center></td>
<td><center><xsl:value-of select="wt"/></center></td>
<td><center><xsl:value-of select="dcdr"/></center></td>
<td><center><xsl:value-of select="se"/></center></td>
</tr>
181243107004
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
OUTPUT:
PRACTICAL: 11
AIM: Refer Practical 11 and apply XSLT (Style) to generated xml
document and print your result.
181243107004
o Add
package Com.test;
181243107004
181243107004
o Now First Deploy the project and then test the web- service.
o SOAP Request and Response is generated when Click on Inserting Information Button.
181243107004
PRACTICAL: 12
AIM: Create web service which provides student information.
Web service is a technology to communicate one programming language with another. For example,
java programming language can interact with PHP and .Net by using web services. In other words,
web service provides a way to achieve interoperability.
181243107004
PRACTICAL: 13
AIM: Create Web Service client which consume above service and
display student data by entering student id.
181243107004
PRACTICAL: 14
AIM: Study and implement Hibernate.
Description
Hibernate framework simplifies the development of java application to interact with the database.
Hibernate is an open source, lightweight, ORM (Object Relational Mapping) tool.
An ORM tool simplifies the data creation, data manipulation and data access. It is a programming
technique that maps the object to the data stored in the database.
Advantages:
181243107004
1) Open source and Lightweight: Hibernate framework is open source under the LGPL license and
lightweight.
4) Automatic table creation: Hibernate framework provides the facility to create the tables of the
database automatically. So there is no need to create tables in the database manually.
5) Simplifies complex join: To fetch data form multiple tables is easy in hibernate framework.
6) Provides query statistics and database status: Hibernate supports Query cache and provide
statistics about query and database status.
1. Create a new Java Web Application project. Here the project is named as “Hibernate”.
181243107004
2. After step 1, Netbeans itself set the server to Glass Fish Server and set the context path
“/Hibernate”.
181243107004
4. Once the Finish button is clicked. Hibernate create a “hibernate.cnf.xml” file, which is
configuration file on which the Hibernate Framework works.
index.html
181243107004
<!DOCTYPE html>
<html>
<head>
<title>Index File</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div>Hello World</div>
</body>
</html>
OUTPUT:
PRACTICAL: 15
AIM: Study and Implement MVC using Spring Framework.
181243107004
Description
The Spring framework comprises several modules such as IOC, AOP, DAO, Context, ORM, WEB
MVC etc. We will learn these modules in next page. Let's understand the IOC and Dependency
Injection first.
Advantages
1) Predefined Templates: Spring framework provides templates for JDBC, Hibernate, JPA etc.
technologies. So there is no need to write too much code. It hides the basic steps of these
technologies.
2) Loose Coupling: The Spring applications are loosely coupled because of dependency
injection.
3) Easy to test: The Dependency Injection makes easier to test the application. The EJB or
Struts application require server to run the application but Spring framework doesn't require
server.
5) Fast Development: The Dependency Injection feature of Spring Framework and it support
to various frameworks makes the easy development of JavaEE application.
1. Create a new Java Web Application project. Here the project is named as “Spring_MVC”.
181243107004
2. After step 1, Netbeans itself set the server to Glass Fish Server and set the context path
“/Spring_MVC”.
3. From the various list of Framework options, we select Spring Web MVC Framework.
181243107004
4. Once the Finish button is clicked. Spring Web MVC Framework creates three files named as
“applicationContext.xml” file, “redirect.jsp” file and “dispatcher-servlet.xml” file, which are
the files on which the Spring MVC Framework works.
applicationContext.xml
redirect.jsp
181243107004
dispatcher-servlet.xml
index.html
181243107004
<body>
<p>Hello World</p>
</body>
</html>
OUTPUT: