melarco
07-11-2008, 19:31
Salve a tutti !!
Sto cercando di realizzare un programma che crei un Server che riceve un semplice messaggio e lo stampi ;ma ho alcuni dubbi:
Utilizzando il multithreading posso eseguire Server e client sulla stessa macchina???
Consentitemi di postare il codice per farmi capire meglio:
Questo è il server
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class ServerClient {
public static void main(String[] args)throws IOException {
ServerSocket ss = new ServerSocket(2000);//creare una ServerSocket ed attendere connessioni in ingresso:
Socket s = ss.accept();
Client client=new Client();
client.start();
InputStream in = s.getInputStream();
int readbyte = in.read();
while (readbyte >= 0) {
System.out.print((char)readbyte);
readbyte = in.read();
}
}
}
Questo è il client
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
public class Client extends Thread{
public void run(){
System.out.println("pippo baudo");
String message = "Messaggio di prova";
try{
Socket c = new Socket("127.0.0.1",2000);
OutputStream out = c.getOutputStream();
out.write(message.getBytes());
out.close();
c.close();
}
catch(IOException exc){
System.out.println("eccezione");
}
}
}
Quando eseguo il programma il server sembra funzionare
ma il run del client nn viene esguito
Sapreste aiutarmi????
grazie un saluto a tutti
Sto cercando di realizzare un programma che crei un Server che riceve un semplice messaggio e lo stampi ;ma ho alcuni dubbi:
Utilizzando il multithreading posso eseguire Server e client sulla stessa macchina???
Consentitemi di postare il codice per farmi capire meglio:
Questo è il server
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class ServerClient {
public static void main(String[] args)throws IOException {
ServerSocket ss = new ServerSocket(2000);//creare una ServerSocket ed attendere connessioni in ingresso:
Socket s = ss.accept();
Client client=new Client();
client.start();
InputStream in = s.getInputStream();
int readbyte = in.read();
while (readbyte >= 0) {
System.out.print((char)readbyte);
readbyte = in.read();
}
}
}
Questo è il client
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
public class Client extends Thread{
public void run(){
System.out.println("pippo baudo");
String message = "Messaggio di prova";
try{
Socket c = new Socket("127.0.0.1",2000);
OutputStream out = c.getOutputStream();
out.write(message.getBytes());
out.close();
c.close();
}
catch(IOException exc){
System.out.println("eccezione");
}
}
}
Quando eseguo il programma il server sembra funzionare
ma il run del client nn viene esguito
Sapreste aiutarmi????
grazie un saluto a tutti