Sei sulla pagina 1di 36

ADVANCED JAVA - PRACTICALS

L.D. COLLEGE OF ENGINEERING


NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 1
Aim: Create chat application using either TCP or UDP protocol.

server.java
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class server {

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


{
ServerSocketss=new ServerSocket(7888);
Socket s=ss.accept();
DataInputStream din=new DataInputStream(s.getInputStream());
String str;
str=din.readUTF();
System.out.println("Client:\t"+str);
DataOutputStreamdout=new DataOutputStream(s.getOutputStream());
DataInputStreammsg=new DataInputStream(System.in);
do
{
str=din.readUTF();
System.out.print("Client:\t"+str);
System.out.print("Server:\t");
str=msg.readLine();
dout.writeUTF(str);
}while(!str.equals(“bye”))
}
}

client.java
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("localhost",7888);
if(s.isConnected())
{
System.out.println("Connected to server");
}
DataInputStreammsg=new DataInputStream(System.in);

1
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

String str="Start
Chat..............................................................................................";
DataOutputStreamdout=new DataOutputStream(s.getOutputStream());
dout.writeUTF(str);
System.out.println(str);
DataInputStream din=new DataInputStream(s.getInputStream());
do
{
System.out.print("Client:\t");
str=msg.readLine();
dout.writeUTF(str+"\n");
str=din.readUTF();
System.out.println("Server:\t"+str);
}while(!str.equals(“bye”))
}
}

Output:

2
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 2
Aim: Implement TCP Server for transferring files using Socket and ServerSocket.

server.java
import java.io.*;
import java.net.*;
class Server
{
public static void main(String args[]) throws Exception
{
ServerSocketss=new ServerSocket(7777);
Socket s=ss.accept();
System.out.println("connected..........");
FileInputStream fin=new FileInputStream("Send.txt");
DataOutputStreamdout=new DataOutputStream(s.getOutputStream());
int r;
while((r=fin.read())!=-1)
{
dout.write(r);

}
System.out.println("\nFiletranfer Completed");
s.close();
ss.close();
}
}
client.java
import java.io.*;
import java.net.*;
public class Client {

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


{
Socket s=new Socket("localhost",7777);
if(s.isConnected())
{
System.out.println("Connected to server");
}
FileOutputStreamfout= new FileOutputStream("received.txt");
DataInputStream din=new DataInputStream(s.getInputStream());
int r;
while((r=din.read())!=-1)
{
fout.write((char)r);
}
s.close();

3
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

}
Output:
Server Side:
connected………………….
Client Side:
connected to server
send.txt
Hello how are you?
recceived.txt
Hello how are you?

4
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 3
Aim: Implement any one sorting algorithm using TCP/UDP on Server application and give Input on Client
Side and client should give sorted output from server and display sorted on input side.

server.java
import java.io.*;
import java.net.*;
import java.util.Arrays;
public class server {
public static void main(String[] args) throws Exception{
ServerSocket ss = new ServerSocket(2001);
Socket s = ss.accept();
InputStream is = s.getInputStream();
int n = is.read();
int a[] = new int[n];
for(int i=0;i<n;i++){
a[i] = is.read();
}
for(int i=0;i<n;i++){
for(int j=i;j<n;j++){
if(a[i]>a[j]){
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
OutputStream os = s.getOutputStream();
for(int i=0;i<n;i++){
os.write(a[i]);
}
}

5
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

client.java
package GTU_Socket;
import java.net.*;
import java.io.*;
import java.util.*;
public class client {
public static void main(String[] args) throws Exception{
Socket s = new Socket("localhost",2001);
Scanner sc = new Scanner(System.in);
System.out.println("Enter number of array elements:");
int n = sc.nextInt();
int a[] = new int[n];
OutputStream os = s.getOutputStream();
InputStream is = s.getInputStream();
os.write(n);
for(int i=0;i<n;i++){
System.out.println("Enter array element "+(i+1)+" :");
a[i] = sc.nextInt();
os.write(a[i]);
}
System.out.println("\n\nImplementing Bubble Sort:\n\nSorted Array:");
for(int i=0;i<n;i++){
a[i] = is.read();
System.out.println(a[i]);
}
}
}

Output:
Server Side:

6
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Client Side:
Enter number of array elements: 5
Enter array element 1 : 1
Enter array element 2 : 5
Enter array element 3 : 4
Enter array element 4 : 2
Enter array element 5 : 3

Implementing Bubble Sort:


Sorted Array:
1
2
3
4
5

7
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 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 return reverse of this string to each of the
client.

server.java
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)
{
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);

8
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

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.java
import java.io.*;
import java.net.*;
public class client
{
public static void main(String[] args) throws Exception
{
Socket s=new Socket("localhost",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);
}
}
}

Output:
Server.java

9
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Client1

Client 2:

10
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 5
Aim: Write RMI application where client provided two number and server responds with summing it.

Adder.java
import java.rmi.*;
public interface Adder extends Remote{
public int add(int x,int y) throws Exception;
}

AdderC.java
import java.rmi.*;
import java.rmi.server.*;
public class AdderC extends UnicastRemoteObject implements Adder{
AdderRemote() throws RemoteException{
super();
}
@Override
public int add(int x,int y){
return x+y;
}
}

Client.java
import java.rmi.*;
public class Client {
public static void main(String[] args) {
try{
Adder stub = (Adder)Naming.lookup("rmi://localhost:8765/test");
System.out.println(stub.add (2,3));
}
catch(Exception e){
System.out.println(e);
}
}

11
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Server.java
import java.rmi.*;
import java.rmi.server.*;
public class Server {
public static void main(String[] args) {
try{
Adder stub = new AdderRemote();
Naming.rebind("rmi://localhost:8765/test ",stub);
System.out.println("Connection");
}
catch(Exception e){
System.out.println(e);
} }}

Output:

12
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 6
Aim: Implement Student Information System using JDBC and RMI

StudentI.java Code:
import java.rmi.Remote;
import java.sql.*;
import java.util.*;
public interface StudentI extends Remote
{
public abstract ArrayList insert(int id,String name,String branch,int atd) throws Exception;
}

StudentC.java Code:
import java.sql.*;
import java.rmi.*;
import java.rmi.server.*;
import java.util.*;
public class StudentC extends UnicastRemoteObject implements StudentI
{
public StudentC() throws Exception
{
super();
}
public ArrayList insert(int id,String name,String branch,int atd) throws Exception
{
ArrayList ar=new ArrayList();
Class.forName("com.mysql.jdbc.Driver");
Connection
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql","root","birju");
Statement stmt=con.createStatement();
stmt.executeUpdate("insert into student values("+id+",'"+name+"','"+branch+"',"+atd+")");
ResultSet rs=stmt.executeQuery("select * from student where id="+id);
rs.next();
int Id=rs.getInt(1);
name=rs.getString(2);
branch=rs.getString(3);
atd=rs.getInt(4);

ar.add(new Integer(Id));
ar.add(name);
ar.add(branch);
ar.add(new Integer(atd));
con.close();
return ar;

13
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

}
}

Server.java Code:
import java.rmi.*;
public class Server
{
public static void main(String args[]) throws Exception
{
StudentI obj=new StudentC();
Naming.rebind("stinfo",obj);
System.out.println("Server Started");
}
}

Client.java Code:
import java.rmi.*;
import java.sql.*;
import java.util.*;
public class Client
{
public static void main(String args[]) throws Exception
{
Scanner scan= new Scanner(System.in);
System.out.println("Enter id,name,branch,attendance for student:");
int id=scan.nextInt();
String name=scan.next();
String branch=scan.next();
int atd=scan.nextInt();
StudentI obj=(StudentI)Naming.lookup("stinfo");
ArrayList ar=obj.insert(id,name,branch,atd);
Iterator it=ar.iterator();
System.out.println("Id\tName\tBranch\tAttendance");
System.out.println(it.next()+"\t"+it.next()+"\t"+it.next()+"\t"+it.next()+"\t");
}
}

14
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Output:

15
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 7
Aim: Create a servlet file which contains all database functions
1. Create Database 2. Create Table 3. Insert Records
4. Update/Delete Records 5. Delete table

exp7_1.html
<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
<head>
<title>Exp 7</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form action="exp7">
1. to create database<br>
2. to create table<br>
3. to insert data<br>
4. to update/delete data<br>
5. to delete table<br>
<input type="text" name="choice"><br><br>
<input type="submit" value="Submit">
</form>
</body>
</html>

exp7.java
16
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

package exp7;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class exp7 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
try{
String choice = request.getParameter("choice");
if(choice.equals("1")){
response.sendRedirect("exp7_1?name=createDB");
}
else if(choice.equals("2")){
response.sendRedirect("exp7_1?name=createTable");
}
else if(choice.equals("3")){
response.sendRedirect("exp7_1?name=insert");
}
else if(choice.equals("4")){
response.sendRedirect("exp7_1?name=update");
}
else if(choice.equals("5")){
response.sendRedirect("exp7_1?name=deleteTable");
}
}
catch(Exception e){
out.print(e);
}

17
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

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

exp7_1.java
package exp7;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class exp7_1 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
Connection con;
try{
String func = request.getParameter("name");
out.println("<form action='exp7_2'>");
out.println("<input type='hidden' name='func' value='"+func+"'>");
out.println("Enter Database name: <input type='text' name='dbname'><br>");
if(!func.equals("createDB")){
out.println("Enter Table name: <input type='text' name='tablename'><br>");
}
out.println("<input type='submit' value='submit'>");
out.println("</form>");
}
catch(Exception e){
out.println(e);

18
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

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

exp7_2.java
package exp7;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class exp7_2 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con;
String url = "jdbc:mysql://localhost/";
String user = "root";
String pass = "root1";
String func = request.getParameter("func");
String dbName = request.getParameter("dbname");
if(!func.equals("createDB")){
String tableName = request.getParameter("tablename");
url = url + dbName;
con = DriverManager.getConnection(url,user,pass);
Statement st = con.createStatement();

19
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

if(func.equals("createTable")){
st.executeUpdate("create table "+tableName+" (name varchar(50));");
out.println("Table Created");
}
else if(func.equals("deleteTable")){
st.executeUpdate("drop table "+tableName);
out.println("Table Deleted");
}
else if(func.equals("insert")){
ResultSet rs = st.executeQuery("select * from "+tableName);
ResultSetMetaData rsmd = rs.getMetaData();
int columns = rsmd.getColumnCount();
out.println("<form action='exp7_3'>");
out.println("<input type='hidden' name='dbName' value='"+dbName+"'>");
out.println("<input type='hidden' name='tableName' value='"+tableName+"'>");
String colName;
String colType;
int i=1;
while(i<=columns){
colName = rsmd.getColumnName(i);
colType = rsmd.getColumnTypeName(i);
out.println(colName+"("+colType+")"+": <input type='text' name='"+colName+"'><br>");
i++;
}
out.println("<input type='submit' value='submit'>");
out.println("</form>");
}
else if(func.equals("update")){
ResultSet rs = st.executeQuery("select * from "+tableName);
ResultSetMetaData rsmd = rs.getMetaData();
int columns = rsmd.getColumnCount();
for(int i=1;i<=columns;i++){

20
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

out.println(rsmd.getColumnName(i)+"&nbsp;&nbsp;&nbsp;&nbsp;");
}
out.println("Update&nbsp;&nbsp;&nbsp;&nbsp;Delete<br>");
while(rs.next()){
for(int i=1;i<=columns;i++){
out.println(rs.getObject(i)+"&nbsp;&nbsp;&nbsp;&nbsp;");
}
out.println("<a
href='exp7_5?func=update&dbName="+dbName+"&tableName="+tableName+"&name="+rsmd.getColu
mnName(1)+"&value="+rs.getObject(1)+"'>Update</a>&nbsp;&nbsp;&nbsp;&nbsp;");
out.println("<a
href='exp7_5?func=delete&dbName="+dbName+"&tableName="+tableName+"&name="+rsmd.getColu
mnName(1)+"&value="+rs.getObject(1)+"'>Delete</a>");
out.println("<br><br>");
}
}
}
else{
con = DriverManager.getConnection(url,user,pass);
Statement st = con.createStatement();
st.executeUpdate("create database "+dbName);
out.println("Database Created");
}

}
catch(Exception e){
out.println(e);
}
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}

21
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

exp7_3.java
package exp7;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class exp7_3 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
response.setContentType("text/html");
String tableName = request.getParameter("tableName");
String dbName = request.getParameter("dbName");
out.println(dbName);
out.println(tableName);
String url = "jdbc:mysql://localhost/"+dbName;
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(url,"root","root1");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("select * from "+tableName);
ResultSetMetaData rsmd = rs.getMetaData();
int columns = rsmd.getColumnCount();
String colName;
String value;
String query="insert into "+tableName+" values(";
for(int i=1;i<=columns;i++){
colName = rsmd.getColumnName(i);
value = request.getParameter(colName);
if(!rsmd.getColumnTypeName(i).equals("INTEGER")){
value = "'" + value + "'";

22
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

}
query = query + value + ",";
}
query = query.substring(0,query.length()-1);
query = query + ")";
out.println(query);
st.executeUpdate(query);
}
catch(Exception e){
out.println(e);
}
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}

exp7_5.java
package exp7;
import java.io.*;
import java.sql.Connection;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class exp7_5 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
response.setContentType("text/html");
String func = request.getParameter("func");
String dbName = request.getParameter("dbName");

23
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

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


String name = request.getParameter("name");
String value = request.getParameter("value");
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost/"+dbName,"root","root1");
Statement st = con.createStatement();
if(func.equals("delete")){
st.executeUpdate("delete from "+tableName+" where "+name+" = "+value);
}
else{
ResultSet rs = st.executeQuery("select * from "+tableName+" where "+name+" = "+value);
ResultSetMetaData rsmd = rs.getMetaData();
int columns = rsmd.getColumnCount();
rs.first();
out.println("<form action='exp7_4'>");
out.println("<input type='hidden' name='dbName' value='"+dbName+"'>");
out.println("<input type='hidden' name='tableName' value='"+tableName+"'>");
out.println("<input type='hidden' name='name1' value='"+name+"'>");
out.println("<input type='hidden' name='value' value='"+value+"'>");
for(int i=1;i<=columns;i++){
out.println(i);
String colName = rsmd.getColumnName(i);
out.println(colName+": <input type='text' name="+colName+">");
out.println("<br>");
}
out.println("<input type='submit' value='Update'>");
out.println("</form>");
}
}
catch(Exception e){
out.println(e);

24
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

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

exp7_4.java
package exp7;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class exp7_4 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
response.setContentType("text/html");
String dbName = request.getParameter("dbName");
String tableName = request.getParameter("tableName");
String name = request.getParameter("name1");
String value = request.getParameter("value");
String url = "jdbc:mysql://localhost/"+dbName;
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(url,"root","root1");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("select * from "+tableName);
ResultSetMetaData rsmd = rs.getMetaData();
int columns = rsmd.getColumnCount();
String colName;

25
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

String val;
String query="update "+tableName+" set ";
for(int i=1;i<=columns;i++){
colName = rsmd.getColumnName(i);
val = request.getParameter(colName);
out.println(val);
if(!rsmd.getColumnTypeName(i).equals("INTEGER")){
val = "'" + val + "'";
}
query = query + colName + "=" + val + ",";
}
query = query.substring(0,query.length()-1);
query = query + "where " + name + "="+value;
out.println(query);
st.executeUpdate(query);
}
catch(Exception e){
out.println(e);
}
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}

web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-
app_3_1.xsd">
<servlet>
<servlet-name>exp7</servlet-name>

26
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

<servlet-class>exp7.exp7</servlet-class>
</servlet>
<servlet>
<servlet-name>exp7_1</servlet-name>
<servlet-class>exp7.exp7_1</servlet-class>
</servlet>
<servlet>
<servlet-name>exp7_2</servlet-name>
<servlet-class>exp7.exp7_2</servlet-class>
</servlet>
<servlet>
<servlet-name>exp7_3</servlet-name>
<servlet-class>exp7.exp7_3</servlet-class>
</servlet>
<servlet>
<servlet-name>exp7_4</servlet-name>
<servlet-class>exp7.exp7_4</servlet-class>
</servlet>
<servlet>
<servlet-name>exp7_5</servlet-name>
<servlet-class>exp7.exp7_5</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>exp7</servlet-name>
<url-pattern>/exp7</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>exp7_1</servlet-name>
<url-pattern>/exp7_1</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>exp7_2</servlet-name>

27
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

<url-pattern>/exp7_2</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>exp7_3</servlet-name>
<url-pattern>/exp7_3</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>exp7_4</servlet-name>
<url-pattern>/exp7_4</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>exp7_5</servlet-name>
<url-pattern>/exp7_5</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>

Output:

28
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

29
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 8
Aim: Use following Java Statement interface to implement program
1. Statement 2. Prepared Statement

exp8.java
package exp8;
import java.util.*;
import java.sql.*;
public class exp8 {
public static void main(String[] args) throws Exception{
Connection con = Connect.getCon();
Statement st = con.createStatement();
st.executeUpdate("create table sample(name varchar(50), enroll int(12));");
PreparedStatement ps = con.prepareStatement("insert into sample value('vishwa',160);");
ps.executeUpdate();
ps = con.prepareStatement("update sample set name=? where name='vishwa';");
ps.setString(1,"vishu");
ps.executeUpdate();
con.close();
System.out.println("Done Succefully");
}
}

Connect.java
package exp8;
import java.sql.*;
public class Connect {
public static Connection getCon()throws Exception{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/db1","root","root1");
return con;
}

30
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Output:

31
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 9
Aim: Create Servlet File and Study 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.

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 :-
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee">
<servlet>
<servlet-name>WebServlet</servlet-name>
<servlet-class>WebServlet</servlet-class>
</servlet>
<welecome-file-list>
<welcome-file>MainPage.html</welcome-file>
<welcome-file>index.html</welcome-file>
</welecome-file-list>

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

Here, above example it show from where the server url request redirect. Here the Servlet class and name
is WebServlet and <url-pattern> tag map the /Servlet URL in Servlet and fetch result about URL.<url-
pattern> parent tag is <servlet-mapping> and always start with <web-app> and end with</web-app>.

32
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

Practical No: 10
Aim: Create Login form and perform state management using Cookies, HttpSession and URL Rewriting

index.html Code:
<html>
<head>
<title>Login</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
.b1
{
width: 370px;
height: 40px;
margin:10px;
color: white;
background-color: #008CBA;
border: 0px solid grey;
cursor: pointer;
}
.side
{
padding: 10px;
margin: 10px;
width: 370px;
}
h1{color:white;}
.box{margin-top:200px;}
</style>
</head>
<body bgcolor="#222222" align="center">
<div class="box">
<h1> Welcome to Login Portal</h1>
<form action="FirstServlet" method="post">
<input class="side" type="text" name="userName" placeholder="Username"/><br/>
<input class="side" type="password" name="password"
placeholder="Password"/><br/>
<input class="b1" type="submit" value="Login"/>
</form>
</div>
</body>

</html>

FirstServlet.java Code:
33
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
public class FirstServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name=request.getParameter("userName");
String pwd=request.getParameter("password");
if(pwd.equals("birju") && name.equals("admin"))
{
out.print("<h1>Welcome "+name+"</h1>");
Cookie ck=new Cookie("uname",name);//creating cookie object
response.addCookie(ck);//adding cookie in the response
out.print("<b>Cookie has been generated for this session<br></b>");
out.print("<b>Click on button to view Cookie...</b>");
//creating submit button
out.print("<form action='SecondServlet' method='post'>");
out.print("<br><input type='submit' value='go'>");
out.print("</form>");
}
else
{
out.println("Incorrect Username or Password!!!");
}
out.close();
}catch(Exception e){System.out.println(e);}
}

SecondServlet.java Code:
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class SecondServlet extends HttpServlet {

protected void processRequest(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {

34
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

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

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

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

Cookie ck[]=request.getCookies();
out.print("Value stored in Cookie : "+ck[0].getValue());

out.close();

}catch(Exception e){System.out.println(e);}
}

web.xml Code:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
<servlet>
<servlet-name>FirstServlet</servlet-name>
<servlet-class>FirstServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>SecondServlet</servlet-name>
<servlet-class>SecondServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FirstServlet</servlet-name>
<url-pattern>/FirstServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SecondServlet</servlet-name>
<url-pattern>/SecondServlet</url-pattern>
</servlet-mapping>

35
ADVANCED JAVA - PRACTICALS
L.D. COLLEGE OF ENGINEERING
NAME: VISHWA S ARDESHNA
B.E. 6TH SEM

<session-config>
<session-timeout>
30
</session-timeout>
</session-config>

</web-app>

36

Potrebbero piacerti anche