Applicazione di rete

SERVER

import java.io.*;
import java.net.*;
public class Server {
    String[] suggerimenti={"Studia di piu","E' meglio che esci di casa","Dai Gi",
    "Dai!","Pensa alla salute","Fa un po' de casino"};
    public void go(){
        try{
            ServerSocket s1=new ServerSocket(4242);//mi creo una porta di ascolto
            while(true){    //quando qualcuno chiede di entrare creo un collegamento diretto tra server e client
                Socket presa=s1.accept(); //il socket è una presa
                //trasmissione dei dati al client:
                PrintWriter scrivi=new PrintWriter(presa.getOutputStream());//classe che invia i dati nel collegamento virtuale
                String s=getSuggerimenti();
                scrivi.println(s);//manda nel canale la stringa s
                scrivi.close();
                System.out.println(s);
            }
        }
        catch(IOException ex){
            ex.printStackTrace();
        }

    }
    private String getSuggerimenti(){
        int r=(int)(Math.random()*suggerimenti.length);
        return suggerimenti[r];
    }
    public static void main(String args[]){
        Server serv=new Server();
        serv.go();
    }
}

 

 

CLIENT

import java.io.*;
import java.net.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Client2 {
    JFrame f1=new JFrame("Client");
    //JButton b=new JButton();
    JTextArea a1=new JTextArea();
//    JLabel l1=new JLabel();
    public void go(){
        try{
            f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            f1.setSize(500,500);
            f1.add(a1);
            f1.setVisible(true);
            //collegamento al server(ip,porta)
            for(int i=0;i<1;i++){
            Socket s=new Socket("192.168.3.25",4242);
            InputStreamReader r=new InputStreamReader(s.getInputStream());
            BufferedReader reader=new BufferedReader(r);
            //istruzione per leggere dal server
            String suggerimento=reader.readLine();
            System.out.println("Suggerimento: "+suggerimento);
            reader.close();
            a1.setText(suggerimento);
            }
        }catch(IOException ex){
            ex.printStackTrace();
        }
    }
    public void finestra(){

    }
    public static void main(String Args[]){
        Client2 c=new Client2();
        c.go();
    }
}

Commenti