Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 6

Server:import java.io.*; import java.net.*; import java.util.*; import java.awt.*; import javax.swing.

*;

public class SampleServer extends JFrame { // ext area !or displa"ing contents private J ext#rea jta $ new J ext#rea%&;

public static void main%String'( args& { new SampleServer%&; )

public SampleServer%& { // *lace text area on t+e !rame set,a"out%new -order,a"out%&&; add%new JScroll*ane%jta&. -order,a"out./01 02&;

set itle%3Server3&; setSi4e%566. 766&; set8e!ault/lose9peration%JFrame.0:; <91</,9S0&; set=isible%true&; // ;t is necessar" to s+ow t+e !rame +ere>

tr" {

// /reate a server soc?et ServerSoc?et serverSoc?et$new ServerSoc?et%@666&; jta.append%3Server started at 3 A new 8ate%& A BCnB&;

// ,isten !or a connection reDuest Soc?et soc?et$serverSoc?et.accept%&;

// /reate data input and output streams 8ata;nputStream inputFrom/lient$new 8ata;nputStream%soc?et.get;nputStream%&&; 8ata9utputStream output o/lient$new 8ata9utputStream%soc?et.get9utputStream%&&;

w+ile %true& { // 2eceive radius !rom t+e client

double radius $inputFrom/lient.read8ouble%&; // /ompute area double area $ radius * radius * Eat+.*;;

// Send area bac? to t+e client output o/lient.write8ouble%area&;

jta.append%32adius received !rom client: 3 A radius A BCnB&; jta.append%3#rea !ound: 3 A area A BCnB&;

) ) catc+%;90xception ex& { S"stem.err.println%ex&; ) ) ) /lient:import java.io.*; import java.net.*; import java.awt.*; import java.awt.event.*; import javax.swing.*;

public class Sample/lient extends JFrame { // ext !ield !or receiving radius private J extField jt! $ new J extField%&;

// ext area to displa" contents private J ext#rea jta $ new J ext#rea%&;

// ;9 streams private 8ata9utputStream toServer; private 8ata;nputStream !romServer;

public static void main%String'( args& {

new Sample/lient%&; )

public Sample/lient%& { // *anel p to +old t+e label and text !ield J*anel p $ new J*anel%&; p.set,a"out%new -order,a"out%&&; p.add%new J,abel%30nter radius3&. -order,a"out.F0S &; p.add%jt!. -order,a"out./01 02&; jt!.setGori4ontal#lignment%J extField.2;HG &;

set,a"out%new -order,a"out%&&; add%p. -order,a"out.192 G&; add%new JScroll*ane%jta&. -order,a"out./01 02&;

jt!.add#ction,istener%new extField,istener%&&;

set itle%3/lient3&; setSi4e%566. 766&; set8e!ault/lose9peration%JFrame.0:; <91</,9S0&; set=isible%true&; // ;t is necessar" to s+ow t+e !rame +ere>

tr" { // /reate a soc?et to connect to t+e server Soc?et soc?et$new Soc?et%3local+ost3.@666&;

// Soc?et soc?et $ new Soc?et%3I76.J5K.J6K.773. @666&; // Soc?et soc?et $ new Soc?et%3liang.armstrong.edu3. @666&; // /reate an input stream to receive data !rom t+e server

!romServer$new 8ata;nputStream%soc?et.get;nputStream%&&;

// /reate an output stream to send data to t+e server toServer$new 8ata9utputStream%soc?et.get9utputStream%&&;

) catc+ %;90xception ex& { jta.append%ex.toString%& A BCnB&; ) )

private class extField,istener implements #ction,istener { L9verride public void action*er!ormed%#ction0vent e& { tr" { // Het t+e radius !rom t+e text !ield double radius $ 8ouble.parse8ouble%jt!.get ext%&.trim%&&;

// Send t+e radius to t+e server toServer.write8ouble%radius&; toServer.!lus+%&;

// Het area !rom t+e server double area $!romServer.read8ouble%& ;

// 8ispla" to t+e text area jta.append%32adius is 3 A radius A 3Cn3&; jta.append%3#rea received !rom t+e server is 3 A area A BCnB&; ) catc+ %;90xception ex& { S"stem.err.println%ex&; ) ) ) )

You might also like