Sie sind auf Seite 1von 35

Dipen Mavani 17080116036

Practical : 1

Aim : Create chat application using TCP & UDP protocol. Connection on both sides should
end if any one of them types ‘bye’. Implement this on localhost as well as on multiple devices.
Input:
Server Tcp
package server;

import java.io.*;
import java.net.*;
import java.util.Scanner;
public class server extends Thread{
ServerSocket ss=null;
Socket s=null;
public server(int port) throws Exception {
ss=new ServerSocket(port);
System.out.println("waiting");
s=ss.accept();
System.out.println("server connected to client");
DataInputStream dis=new DataInputStream(s.getInputStream());
DataOutputStream dos=new DataOutputStream(s.getOutputStream());
String str,str1;
Scanner sc =new Scanner(System.in);
while(true) {

str=dis.readUTF();
if((str.equals("Bye"))) {
dos.writeUTF(str);
break;}
System.out.println(" "+str+":C");
str1=sc.nextLine();
dos.writeUTF(str1);
}
s.close();
System.out.println("server disconnected");

}
public static void main(String []args) throws Exception {
server s=new server(9090);
}
}
Client Tcp
package server;

import java.io.*;
import java.net.*;
import java.util.Scanner;

public class client {


private Socket s=null;
private DataOutputStream dos=null;
DataInputStream dis=null;
page. 1
Dipen Mavani 17080116036
public client(String Address,int port) throws UnknownHostException, IOException {
s=new Socket(Address, port);
dos=new DataOutputStream(s.getOutputStream());
dis=new DataInputStream(s.getInputStream());
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

String str;
while(true) {
str=br.readLine();
dos.writeUTF(str);
String str1=(String)dis.readUTF();
if((str1.equals("bye")))
{
dos.writeUTF(str);
break;
}
System.out.println(" "+str1+":S");

}
System.out.println("client disconnected");
dis.close();
s.close();
}
public static void main(String []args) throws Exception {
client c=new client("127.0.0.1",9090);
}
}
Server Udp
package udpchat;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
import java.util.Scanner;

public class Serverudp {


DatagramSocket ds=null;
byte []Buf=new byte[1024];
DatagramPacket dp,dp2;
public Serverudp(int port) throws Exception {
ds=new DatagramSocket(port);
dp=new DatagramPacket(Buf,1024);
while(true) {
ds.receive(dp);
String str= new String(dp.getData(),0,dp.getLength());
if(str.equalsIgnoreCase("Bye"))
break;
System.out.println("\t\t"+str+"--C");
Scanner sc=new Scanner(System.in);
str=sc.nextLine();
dp2=new DatagramPacket(str.getBytes(),str.length(),dp.getAddress(),dp.getPort());
ds.send(dp2);
page. 2
Dipen Mavani 17080116036
}
}
public static void main(String[]args) throws Exception {
Serverudp su=new Serverudp(9091);
}
}
Client Udp
package udpchat;

import java.io.BufferedInputStream;
import java.io.InputStreamReader;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Scanner;

public class udpclient {


DatagramSocket ds=null;
byte []Buf=new byte[1024];
DatagramPacket dp=null;
public udpclient(int port) throws Exception {
ds=new DatagramSocket();
while(true) {
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
dp=new
DatagramPacket(str.getBytes(),str.length(),InetAddress.getLocalHost(),port);
ds.send(dp);
if(str.equalsIgnoreCase("Bye"))
break;
DatagramPacket dp2=new DatagramPacket(Buf, 1024);
ds.receive(dp2);

str= new String(dp2.getData(),0,dp2.getLength());


System.out.println("\t\t"+str+"--s");
}
}
public static void main(String []args) throws Exception {
udpclient uc=new udpclient(9091);
}
}
Output :
TCP Server
waiting
server connected to client
Hii Server:C
Hii Dipen
Where are you:C
in goa Chilling
ok:C
bye
ok:C
TCP Client
page. 3
Dipen Mavani 17080116036
Hii Server
Hii Dipen:S
Where are you
in goa Chilling:S
ok
client disconnected

UDP Server
hii--C
hii
how Are u??--C
fine !! and you
fine--C
bye

UDP Client
hii
hii--s
how Are u??
fine !! and you--s
fine
bye--s
bye

page. 4
Dipen Mavani 17080116036
Practical : 2

Aim : Write a network program in which client send a text file to server and server returns
number of characters, lines, words and sentences of that file to client using TCP & UDP.
Input:
TCP Server
package prac2;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class Server {


public static void main(String args[]) throws IOException {

ServerSocket serverSocket=new ServerSocket(1992);


System.out.println("waiting");
Socket socket=serverSocket.accept();
System.out.println("Connected");
DataInputStream dis=new DataInputStream(socket.getInputStream());
String string;
int no_of_char=0;
int no_of_word=0;
int no_of_sentence=0;
String word[];

while((string=dis.readUTF())!=null) {
if(string.equals("exit")) {
break;
}
System.out.println(string);

word=string.split(" ");

no_of_word=word.length;
for(String x:word) {
no_of_char+=x.length();
}
no_of_sentence++;
}

DataOutputStream dos=new DataOutputStream(socket.getOutputStream());


String data="total no of Character :"+no_of_char+"Total no of Word"+no_of_word+"Total
no of Sentence"+no_of_sentence;
System.out.println("hearserver");
dos.writeUTF(data);
dos.flush();
page. 5
Dipen Mavani 17080116036
System.out.println("sent success fully");
dos.close();
dis.close();

}
}
TCP Client
package prac2;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;

public class FileSender {


public static void main(String args[]) throws UnknownHostException, IOException {
Socket socket=new Socket("localhost",1992);
DataOutputStream dos=new DataOutputStream(socket.getOutputStream());
File file = new File("C:\\\\Users\\\\mavan\\\\Desktop\\\\senderfile.txt");

BufferedReader br = new BufferedReader(new FileReader(file));


DataInputStream dis=new DataInputStream(socket.getInputStream());
String str;
while ((str = br.readLine()) != null) {
dos.writeUTF(str);
}

String string;

System.out.println(dis.readUTF());

dis.close();
br.close();
dos.close();

socket.close();
}

UDP Server
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.util.Scanner;

public class server {


page. 6
Dipen Mavani 17080116036
DatagramSocket ds=null;
byte []Buf=new byte[4096];
DatagramPacket dp,dp2;
public server(int port) throws Exception {
System.out.println("waiting");
ds=new DatagramSocket(port);
System.out.println("connected");
dp=new DatagramPacket(Buf,4096);

ds.receive(dp);

String str= new String(dp.getData(),0,dp.getLength());


System.out.println(str);
int no_of_char=0;
int no_of_word=0;
int no_of_sentence=0;
String word[];
char c;
for (int i = 0; i < str.length(); i++) {
c=str.charAt(i);
if(c=='\n') {
no_of_sentence++;

}
else if(c==' '&& str.charAt(i+1)!=' ') {
no_of_word++;
}
else {

no_of_char++;
}
System.out.println(no_of_char);
}
String data="total no of Character :"+no_of_char+"Total no of
Word"+no_of_word+"Total no of Sentence"+no_of_sentence;

dp2=new DatagramPacket(data.getBytes(),data.length(),dp.getAddress(),dp.getPort());
ds.send(dp2);

}
public static void main(String[]args) throws Exception {
server su=new server(9091);
}
}
UDP Client
import java.io.File;
import java.io.FileInputStream;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Scanner;

page. 7
Dipen Mavani 17080116036

public class client {


DatagramSocket ds=null;
byte []Buf=new byte[1024];
DatagramPacket dp=null;
public client(int port) throws Exception {
ds=new DatagramSocket();
String str;
File file = new File("C:\\\\Users\\\\mavan\\\\Desktop\\\\senderfile.txt");
FileInputStream fis=new FileInputStream(file);
byte buf[]=new byte[(int) file.length()];
fis.read(buf);
dp=new DatagramPacket(buf,buf.length,InetAddress.getLocalHost(),port);
ds.send(dp);
System.out.println("sent successfully");
DatagramPacket dp2=new DatagramPacket(Buf, 1024);
ds.receive(dp2);

str= new String(dp2.getData(),0,dp2.getLength());


System.out.println("\t\t"+str);

}
public static void main(String []args) throws Exception {
client uc=new client(9091);
}
}
Output:
TCP Server
waiting
Connected
Dipen Mavani
i study in LDCE
In Branch Information Technology
hearserver
sent success fully
TCP Client
total no of Character :52Total no of Word4Total no of Sentence3

UDP Server
waiting
connected
Dipen Mavani
i study in LDCE
In Branch Information Technology
exit
UDP Client
sent successfully
total no of Character :59Total no of Word7Total no of Sentence3

page. 8
Dipen Mavani 17080116036
Practical : 3

Aim : Implement any one sorting algorithm using TCP/UDP on Server application. Client
sends numbers to the server, server sorts them and passes back to the client.
Input:
Client
package ftptcp;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;

public class filesender {

public static void main(String []args) throws IOException {


Socket s=new Socket("127.0.0.1",9099);
String filename="C:\\Users\\mavan\\Desktop\\FTP.txt";
byte buf[]=new byte[1024];
File f=new File(filename);
FileInputStream fis=new FileInputStream(f);
BufferedInputStream bis=new BufferedInputStream(fis);
bis.read(buf, 0, buf.length);
OutputStream os=s.getOutputStream();
os.write(buf, 0,buf.length);
System.out.println("Send Successfully");
bis.close();
FileOutputStream fos=new FileOutputStream("C:\\Users\\mavan\\Desktop\\FTP.txt");
BufferedOutputStream bos=new BufferedOutputStream(fos);
InputStream is=s.getInputStream();
is.read(buf,0,buf.length);
bos.write(buf, 0, buf.length);
bos.close();

s.close();

System.out.println("hiii");

}
page. 9
Dipen Mavani 17080116036
Server
package ftptcp;

import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.Scanner;

import org.omg.CORBA.DataOutputStream;

public class filereceiver {


public static void main(String a[]) throws IOException {
ServerSocket ss=new ServerSocket(9099);
byte buf[]=new byte[1024];
int i=0;
int arr[]=new int[10];
System.out.println("Waiting");
Socket s=ss.accept();
System.out.println("Connetcted to socket");
String file="C:\\\\Users\\\\mavan\\\\Desktop\\\\FTP1.txt";

FileOutputStream fos=new FileOutputStream("C:\\Users\\mavan\\Desktop\\FTP1.txt");


BufferedOutputStream bos=new BufferedOutputStream(fos);
InputStream is=s.getInputStream();
is.read(buf,0,buf.length);
bos.write(buf, 0, buf.length);
bos.close();
BufferedReader br=new BufferedReader(new FileReader(new File(file)));
String line=br.readLine();
while(line!=null) {
line=line.trim();
if(line.length()==0) {
continue;
}
arr[i++]=Integer.parseInt(line);
line=br.readLine();
}
Arrays.sort(arr);
br.close();
BufferedWriter bw=new BufferedWriter(new FileWriter(file));
for(i=0;i<arr.length;i++) {
bw.write(arr[i]+""+"\n");
System.out.println(arr[i]);
}
bw.close();
File f=new File(file);
FileInputStream fis=new FileInputStream(f);
BufferedInputStream bis=new BufferedInputStream(fis);
bis.read(buf, 0, buf.length);
page. 10
Dipen Mavani 17080116036
OutputStream os=s.getOutputStream();
os.write(buf, 0,buf.length);
os.close();

System.out.println("Send Successfully");
bis.close();
s.close();
ss.close();
System.out.println("Success");
}

}
Output:
Client File
4
3
2
8
6
7
78
55
4
6
Server File
2
3
4
4
6
6
7
8
55
78

page. 11
Dipen Mavani 17080116036

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 client.
Input:
Server
package multipleclient;

import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class server {


public static void main(String a[]) throws Exception {
ServerSocket ss=new ServerSocket(1025);
System.out.println("Waiting");
while(true) {
Socket s=ss.accept();
DataInputStream dis=new DataInputStream(new BufferedInputStream(s.getInputStream()));
DataOutputStream dos=new DataOutputStream(s.getOutputStream());
handle h=new handle(s, dis, dos);
h.start();

}
}
}
class handle extends Thread{
public static int count=0;
DataInputStream dis=null;
DataOutputStream dos=null;
Socket s;
public handle(Socket s1, DataInputStream dis1,DataOutputStream dos2) throws IOException {
s=s1;
dis=dis1;
dos=dos2;
}
public void run(){
try {
count++;
StringBuffer rev=new StringBuffer(dis.readUTF());
System.out.println(rev.reverse());
String strr=new String(rev);
dos.writeUTF(strr+" to client:->"+count);
dos.close();
dis.close();
s.close();
}
page. 12
Dipen Mavani 17080116036
catch(Exception E) {
System.out.println(E);
}
}
}
Client
package multipleclient;

import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;

public class multiclient {


public String str;
public multiclient(String str) throws Exception, IOException {
this.str=str;
Socket s=new Socket(InetAddress.getLocalHost(),1025);
DataOutputStream dos=new DataOutputStream(s.getOutputStream());
dos.writeUTF(new String(this.str));
DataInputStream dis=new DataInputStream(new BufferedInputStream(s.getInputStream()));
System.out.println(dis.readUTF());
dis.close();
dos.close();
s.close();
}

public static void main(String []a) throws IOException, Exception {


multiclient mc=new multiclient("xyz");
mc=new multiclient("rstu");
multiclient mc1=new multiclient("pqrs");
multiclient mc2=new multiclient("abcd");
mc2=new multiclient("vwx");

}
Output:
Client
Dipen
LDCE
Abc
Xyz

Server
nepiD to client:->1
ECDL to client:->2
cbA to client:->3
zyX to client:->4

page. 13
Dipen Mavani 17080116036
Practical : 5

Aim : Write a JDBC program to perform all CRUD operations on data stored in student
table containing the columns for roll number, name and result in percentage using Statement
and Updatable ResultSet.
Input:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner;
public class jdbc{
public static void main(String args[]) throws Exception {
String url = "jdbc:mysql://localhost:3306/mydata";
String user = "root";
String pass = "root";

Connection con = DriverManager.getConnection(url, user, pass);


System.out.println("1:for create\n2:for update\n3:for read\n4:for delete\n5:for exit\n\n ");
Scanner sc=new Scanner(System.in);
int x;
PreparedStatement preparedStatement;
boolean flag=true;
while(flag) {
System.out.println("enter your choise: ");
x=sc.nextInt();
switch(x) {
case 1:
preparedStatement=con.prepareStatement("insert into stucache values(?,?,?,?)");
System.out.println("insert student id :");
preparedStatement.setInt(1, sc.nextInt());
System.out.println("insert student branch :");
preparedStatement.setString(2, sc.next());
System.out.println("insert student name :");
preparedStatement.setString(3, sc.next());
System.out.println("insert student marks :");
preparedStatement.setInt(4, sc.nextInt());
int y=preparedStatement.executeUpdate();
System.out.println("new Record inserted Successfully ");
break;
case 2:
System.out.println("\ninsert student id :");
int id=sc.nextInt();
int done=0;
System.out.println("\n\n11:for update id\t22:for update branch\t33: for
update name\t44:for update marks");
page. 14
Dipen Mavani 17080116036
System.out.println("\n eneter your choise for upadate data: ");
int choise=sc.nextInt();
switch(choise) {
case 11:
preparedStatement =con.prepareStatement("update stucache set enrollment_no=?
where enrollment_no=?");
System.out.println("enter your new enrollment");
preparedStatement.setInt(1, sc.nextInt());
preparedStatement.setInt(2, id);
done=preparedStatement.executeUpdate();
System.out.println("Name with this enrollment_no=>"+id+" is successfully
updated");
break;
case 22:
preparedStatement =con.prepareStatement("update stucache set Branch=? where
enrollment_no=?");
System.out.println("enter your new Branch : ");
preparedStatement.setString(1, sc.next());
preparedStatement.setInt(2, id);
done=preparedStatement.executeUpdate();
System.out.println("Branch with this id=>"+id+" is successfully updated");
break;
case 33:
preparedStatement =con.prepareStatement("update stucache set fname=? where
enrollment_no=?");
System.out.println("enter your new Name : ");
preparedStatement.setString(1, sc.next());
preparedStatement.setInt(2, id);
done=preparedStatement.executeUpdate();
System.out.println("Name with this id=>"+id+" is successfully updated");
break;
case 44:
preparedStatement =con.prepareStatement("update stucache set marks=? where
enrollment_no=?");
System.out.println("enter your new marks : ");
preparedStatement.setInt(1, sc.nextInt());
preparedStatement.setInt(2, id);
done=preparedStatement.executeUpdate();
System.out.println("Marks with this id=>"+id+" is successfully updated");
break;
}
break;
case 3:
String query = "SELECT * FROM stucache;";
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(query);
while(rs.next()) {
for(int i=1;i<=4;i++) {
System.out.printf("%10s",rs.getString(i));
}
System.out.println();
}
break;
page. 15
Dipen Mavani 17080116036

case 4:
preparedStatement=con.prepareStatement("DELETE FROM stucache
WHERE enrollment_no = ?");
System.out.println("insert student id :");
int id1=sc.nextInt();
preparedStatement.setInt(1, id1);
int val=preparedStatement.executeUpdate();
if(val==1)
System.out.println("Data with this "+id1+" is deleted ");
else
System.out.println("Data with this record is not found");
break;
case 5:
flag =false;break;
default:
System.out.println("you had done wrong choise");break;

}
}

}
}
Output:
1:for create
2:for update
3:for read
4:for delete
5:for exit

enter your choise:


1
insert student id :
566
insert student branch :
it
insert student name :
Dipen
insert student marks :
99
new Record inserted Successfully
enter your choise:
2

insert student id :
556

11:for update id 22:for update branch 33: for update name 44:for update marks
page. 16
Dipen Mavani 17080116036

eneter your choise for upadate data:


22
enter your new Branch :
comp
Branch with this id=>556 is successfully updated
enter your choise:
3

566 comp Dipen 99


4569 it malik 55
48995 it Dipen 489
enter your choise:
4
insert student id :
48995
Data with this 48995 is deleted
enter your choise:
5

page. 17
Dipen Mavani 17080116036
Practical : 6

Aim : Create a Menu driven program in JDBC for the information given below. Implement it
using:
a) Prepared Statement
b) Callable Statement
Create following Table schema:
1. Employee_Detail (employee_number number NOT NULL Primary key, employee_name
varchar2(50) NOT NULL, department_id number, salary number, department_name
varchar2(50) NOT NULL).
2. Emp_Personal_detail (employee_number number as foreign key, emp_designation
varchar2(20), basic_salary number, allowance number, hiredate date, phone_number
varchar2(20), email varchar2(25), photo as blob, resume as clob, emp_address
varchar2(100)).
• Display all the Records from the both tables by employee_number.
• Insert Record into the Table. (Hint: - create stored procedure insertdata() in PL/SQL to
insert all the field in both tables. Call the procedure from java application when using
Callable Statement).
• Update The existing record by asking employee_number) (HINT: - Take Updable
Resultset)
• Delete Record by asking employee_number)) (Hint: - Take Updable Resultset)
• Program should handle SQLException and SqlWarning.
Input:

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.sql.Blob;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;
import java.util.Scanner;

import javax.sql.rowset.serial.SerialBlob;

public class EmployeeData {

Connection con ;

static Scanner sc = new Scanner(System.in);


FileInputStream fin ;
int id=1;
page. 18
Dipen Mavani 17080116036

private void UpdateEmployee() throws SQLException {


con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","root");
con.setAutoCommit(false);
PreparedStatement stmt;
System.out.println("enter a employee id which you want to update ");
int employyeId=sc.nextInt();
System.out.println("1.for name\n2.for department id\n3.for salary\n4.for department name");
int choice=sc.nextInt();
switch (choice) {
case 1: {

stmt=con.prepareStatement("UPDATE employee_detail SET employee_name =?


WHERE employee_number="+employyeId );
System.out.println("enter a new name");
stmt.setString(1, sc.next());
stmt.execute();

System.out.println("....................updated successfull...................");
System.out.println("are you want to commit ? if yes press 1 or for rollback press 2");
int test=sc.nextInt();
if(test==1) {con.commit();}
else {con.rollback();}

System.out.println("..................Employee data....................");
ShowData();
break;
}
case 2: {

stmt=con.prepareStatement("UPDATE employee_detail SET department_id =?


WHERE employee_number="+employyeId );
System.out.println("enter a new department ID");
stmt.setInt(1,sc.nextInt());
stmt.execute();

System.out.println("....................updated successfull...................");
System.out.println("are you want to commit ? if yes press 1 or for rollback press 2");
int test=sc.nextInt();
if(test==1) {con.commit();}
else {con.rollback();}

System.out.println("..................Employee data....................");
ShowData();
break;
}
case 3: {

stmt=con.prepareStatement("UPDATE employee_detail SET salary =?


WHERE employee_number ="+employyeId);

System.out.println("enter a new salary");


stmt.setDouble(1, sc.nextDouble());
page. 19
Dipen Mavani 17080116036
stmt.execute();

System.out.println("....................updated successfull...................");
System.out.println("are you want to commit ? if yes press 1 or for rollback press 2");
int test=sc.nextInt();
if(test==1) {con.commit();}
else {con.rollback();}

System.out.println("..................Employee data....................");
ShowData();
break;
}
case 4: {
System.out.println("enter a new department name");

stmt=con.prepareStatement("UPDATE employee_detail SET department_name =?


WHERE employee_number="+employy);
System.out.println("enter a new department name");
stmt.setString(1,sc.next());
stmt.execute();

System.out.println("....................updated successfull...................");
System.out.println("are you want to commit ? if yes press 1 or for rollback press 2");
int test=sc.nextInt();
if(test==1) {con.commit();}
else {con.rollback();}

System.out.println("..................Employee data....................");
ShowData();
break;
}

default:
throw new IllegalArgumentException("Unexpected value: " + choice);
}

private void DeleteEmployee() throws SQLException {

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","root");
con.setAutoCommit(false);
System.out.println("enter a employee id ");
int id = sc.nextInt();
String queryForeign = "DELETE FROM emp_personal_detail WHERE employee_number ="+id;
String query = "DELETE FROM employee_detail WHERE employee_number ="+id;
PreparedStatement stmt = con.prepareStatement(queryForeign);
PreparedStatement stmt1 = con.prepareStatement(query);
stmt.executeUpdate();
stmt1.executeUpdate();
stmt.close();
stmt1.close();
page. 20
Dipen Mavani 17080116036
System.out.println("recorde deleted successfull");
System.out.println("are you want to commit ? if yes press 1 or for rollback press 2");
int test=sc.nextInt();
if(test==1) {con.commit();}
else {con.rollback();}

System.out.println("..................Employee data....................");
ShowData();

private void InsertEmployee() throws SQLException, FileNotFoundException {


con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","root");
con.setAutoCommit(false);
String query = "{CALL insert_employee(?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
CallableStatement stmt = con.prepareCall(query);
stmt.setInt(1, id);id++;
System.out.println("enter employee name");
stmt.setString(2,sc.next());
System.out.println("enter a department id");
stmt.setInt(3, sc.nextInt());
System.out.println("enter salary");
stmt.setDouble(4,sc.nextDouble());
System.out.println("enter department name");
stmt.setString(5,sc.next());
System.out.println("enter a designation ");
stmt.setString(6, sc.next());
System.out.println("enter a base salary");
stmt.setDouble(7,sc.nextDouble());
System.out.println("enter a allowance");
stmt.setInt(8,sc.nextInt());
stmt.setDate(9,new java.sql.Date(System.currentTimeMillis()));
System.out.println("enter a phonenumber");
stmt.setString(10,sc.next());
System.out.println("enter a email id");
stmt.setString(11, sc.next());
System.out.println("enter a photo path from directory like c:/deskop/xyz.jpeg");
stmt.setBlob(12,new FileInputStream(sc.next()));
System.out.println("enter a photo path from directory like c:/deskop/abc.pdf");
stmt.setBlob(13, new FileInputStream(sc.next()));
System.out.println("enter a address");
stmt.setString(14,sc.next());
stmt.execute();
stmt.close();
System.out.println("Stored procedure called successfully!");
System.out.println("are you want to commit ? if yes press 1 or for rollback press 2");
int test=sc.nextInt();
if(test==1) {con.commit();}
else {con.rollback();}

System.out.println("..................Employee data....................");
page. 21
Dipen Mavani 17080116036
ShowData();

private void ShowData() throws SQLException {

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","root");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM student.employee_detail d join
student.emp_personal_detail p where d.employee_number=p.employee_number");
while (rs.next()) {
for (int i = 1; i <= 15; i++) {
if(i==13 || i==14)continue;
System.out.printf("%-20s",rs.getString(i));
}
System.out.println();
}

public static void main(String[] a) throws IOException, SQLException {

EmployeeData emp = new EmployeeData();

boolean loop =true;


FileInputStream fin;

while(loop) {
int choice;
System.out.println("enter your choice \n 1. for show entry \n 2. for insert new employee \n
3.for update by employee number \n 4. for delete by employee number");
choice = sc.nextInt();

switch (choice) {
case 1: {
emp.ShowData();
break;
}
case 2: {
emp.InsertEmployee();
break;
}
case 3: {
emp.UpdateEmployee();
break;
}
case 4: {
emp.DeleteEmployee();
break;
page. 22
Dipen Mavani 17080116036
}
case 5: {
loop =false;
break;

}
default:
throw new IllegalArgumentException("Unexpected value: " + choice);
}
}

}
}

Output:
enter your choice
1. for show entry
2. for insert new employee
3.for update by employee number
4. for delete by employee number
1

1 DipenMavani 101 5000.0 it 1 devloper


6000.0 2 2020-02-25 9944558855 dd44@gmail.com null
4 aevin 101 2223.0 ec 4 de 6000.0
2 2020-02-25 9944558855 ae@gmail.com null
5 renis 101 2223.0 elec 5 de 6000.0
2 2020-02-25 9944558855 re@gmail.com null
enter your choice
1. for show entry
2. for insert new employee
3.for update by employee number
4. for delete by employee number
3
enter a employee id which you want to update
4
1.for name
2.for department id
3.for salary
4.for department name
1
enter a new name
rajesh
....................updated successfull...................
are you want to commit ? if yes press 1 or for rollback press 2
1
..................Employee data....................
1 Dipen 101 5000.0 it 1 devloper 6000.0
2 2020-02-25 9944558855 dd@gmail.com null
4 rajesh 101 2223.0 ec 4 de 6000.0
2 2020-02-25 9944558855 ae@gmail.com null
5 renis 101 2223.0 elec 5 de 6000.0
2 2020-02-25 9944558855 re@gmail.com null
page. 23
Dipen Mavani 17080116036
Practical : 7

Aim : Write a JDBC program for transaction management for practical no. 5 or 6. Use
checkpoints, commit and rollback features.
Input:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.sql.Blob;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;
import java.util.Scanner;

import javax.sql.rowset.serial.SerialBlob;

public class EmployeeData {

Connection con ;

static Scanner sc = new Scanner(System.in);


FileInputStream fin ;
int id=1;

private void DeleteEmployee() throws SQLException {

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","root");
con.setAutoCommit(false);
System.out.println("enter a employee id ");
int id = sc.nextInt();
String queryForeign = "DELETE FROM emp_personal_detail WHERE employee_number ="+id;
String query = "DELETE FROM employee_detail WHERE employee_number ="+id;
PreparedStatement stmt = con.prepareStatement(queryForeign);
PreparedStatement stmt1 = con.prepareStatement(query);
stmt.executeUpdate();
stmt1.executeUpdate();
stmt.close();
stmt1.close();
System.out.println("recorde deleted successfull");
System.out.println("are you want to commit ? if yes press 1 or for rollback press 2");
int test=sc.nextInt();
if(test==1) {con.commit();}
else {con.rollback();}

page. 24
Dipen Mavani 17080116036
System.out.println("..................Employee data....................");
ShowData();

}
private void ShowData() throws SQLException {

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","root");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM student.employee_detail d join
student.emp_personal_detail p where d.employee_number=p.employee_number");
while (rs.next()) {
for (int i = 1; i <= 15; i++) {
if(i==13 || i==14)continue;
System.out.printf("%-20s",rs.getString(i));
}
System.out.println();
}

public static void main(String[] a) throws IOException, SQLException {


emp.UpdateEmployee();
}
}

Output:
enter a employee id
4
recorde deleted successfull
are you want to commit ? if yes press 1 or for rollback press 2
2
..................Employee data....................
1 Dipen 101 5000.0 it 1 devloper 6000.0
2 2020-02-25 9944558855 dd@gmail.com null
4 rajesh 101 2223.0 ec 4 de 6000.0
2 2020-02-25 9944558855 ae@gmail.com null
5 renis 101 2223.0 elec 5 de 6000.0
2 2020-02-25 9944558855 re@gmail.com null

page. 25
Dipen Mavani 17080116036
Practical : 8
Aim : a) Write a servlet to display age of a person by asking his/her date of birth. b) Write a
Servlet Program to Print Today’s Date and time using refresh header..

Input:
a)

Servlet
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.Period;
import java.time.format.DateTimeFormatter;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class Age
*/
@WebServlet("/Age")
public class Age extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public Age() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub

//response.getWriter().append("Served at: ").append(request.getContextPath());


response.sendRedirect("NewFile.html");
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/

page. 26
Dipen Mavani 17080116036
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub

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

Date date1;
DateTimeFormatter dateTimeFormatter=DateTimeFormatter.ofPattern("yyyy-MM-dd");

LocalDate date2=LocalDate.parse(date, dateTimeFormatter);

LocalDate now = LocalDate.now();

Period diff = Period.between(date2, now);


System.out.printf("\nI am %d years, %d months and %d days old.\n\n",
diff.getYears(), diff.getMonths(), diff.getDays());
response.getWriter().append("<h1>Your age Is "+ diff.getYears()+" -Year
"+diff.getMonths()+" -Month "+diff.getDays()+" -Day"+"</h1>");

Html
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form method="post" action="/prac8/Age">
<input type="date" name="date"/>
<input type="submit">

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

Output:
a):

page. 27
Dipen Mavani 17080116036

Input:
b):

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Calendar;
import java.util.GregorianCalendar;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class AutoRefresh
*/
@WebServlet("/AutoRefresh")
public class AutoRefresh extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public AutoRefresh() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {

response.setIntHeader("Refresh", 1);

response.setContentType("text/html");

Calendar calendar = new GregorianCalendar();


String am_pm;
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
page. 28
Dipen Mavani 17080116036
if(calendar.get(Calendar.AM_PM) == 0)
am_pm = "AM";
else
am_pm = "PM";

String CT = hour+":"+ minute +":"+ second +" "+ am_pm;

PrintWriter out = response.getWriter();

out.println("<h1 align='center'>Auto Refresh Page</h1><hr>");


out.println("<h3 align='center'>Current time: "+CT+"</h3>");

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}

Output:
b)

page. 29
Dipen Mavani 17080116036
Practical : 9
Aim : Write a servlet which accepts 10+ numbers using the post method as well as get
method and displays the arithmetic mean, geometric mean and harmonic mean of those
numbers..
Input:
package Servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/First")
public class First extends HttpServlet {
double sum =0;
double sum1=1;
double sum3=0;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {

response.sendRedirect("Number.html");
}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {
int [] number = new int [10];
PrintWriter pw=response.getWriter();
for(int i =0;i<10;i++) {
String para="number"+(i+1);
number[i] = Integer.parseInt(request.getParameter(para));
}
for(int i =0;i<10;i++) {
sum= sum+number[i];
sum1 *= number[i];
sum3 += 1.0 / number[i];
}
double mean = sum/10;

pw.println("arithmetic mean: "+mean+"<br/>");


pw.println(" geometric mean: "+Math.pow(sum1, 1.0 / number.length)+"<br/>");
pw.println(" harmonic mean: "+(10/sum3)+"<br/>");

page. 30
Dipen Mavani 17080116036
Number.html

<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

<form action="/Servlet_9/First" method="post">


<input placeholder="1st number" type="number" name="number1"/><br/>
<input placeholder="2nd number" type="number" name="number2"/><br/>
<input placeholder="3rd number" type="number" name="number3"/><br/>
<input placeholder="4th number" type="number" name="number4"/><br/>
<input placeholder="5th number" type="number" name="number5"/><br/>
<input placeholder="6th number" type="number" name="number6"/><br/>
<input placeholder="7th number" type="number" name="number7"/><br/>
<input placeholder="8th number" type="number" name="number8"/><br/>
<input placeholder="9th number" type="number" name="number9"/><br/>
<input placeholder="10th number" type="number" name="number10"/><br/>

<input type="submit" name="submit" value="submit"/>

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

Output:
Get

Post

page. 31
Dipen Mavani 17080116036
Practical : 10
Aim : a) Write a servlet to store your personal details as a cookie and then display it by
reading from the cookie.
b) Write a Servlet that uses cookies to store the number of times a user has visited the page.
Input:
A)
Get Servlet:
package Prac10;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/DisplayServlet")
public class DisplayServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {

try{
response.setContentType("text/html");
PrintWriter pwriter = response.getWriter();

Cookie c[]=request.getCookies();

pwriter.print("name: "+c[0].getValue() + "<br/>");

pwriter.print("email: "+c[1].getValue());

pwriter.close();
}catch(Exception exp){
System.out.println(exp);
}
}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {

page. 32
Dipen Mavani 17080116036
Post Servlet
package Prac10;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/PracA")
public class PracA extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {

response.sendRedirect("Personal.html");
}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {

Cookie c1=new Cookie("name",request.getParameter("name"));


Cookie c2=new Cookie("email",request.getParameter("email"));

response.addCookie(c1);
response.addCookie(c2);
response.sendRedirect("/Prac10/DisplayServlet");
}

}
Person.html
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form action="/Prac10/PracA" method="post">
<input name="name" placeholder="enter a name" type="text" />
<input name="email" placeholder="enter a email address" type="text" />

<input name="submit" value="submit" type="submit"/>


</form>
</body>
</html>
Output:

page. 33
Dipen Mavani 17080116036

B)
package Prac10;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/PracB")
public class PracB extends HttpServlet {
private static final long serialVersionUID = 1L;
int i = 0;

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {
Cookie c1 = new Cookie("visit",String.valueOf(i));
response.addCookie(c1);
i++;
PrintWriter pwriter = response.getWriter();

Cookie [] c2 = request.getCookies();
pwriter.print("total visits: "+c2[0].getValue());
}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws


ServletException, IOException {

doGet(request, response);
}

}
page. 34
Dipen Mavani 17080116036
Output: –

page. 35

Das könnte Ihnen auch gefallen