Um pouco de Java e Sockets. (Fonte 03: Recebedor)

Publicado por sombriks 03/01/2006

[ Hits: 5.010 ]

Homepage: http://www.google.com/profiles/Sombriks

Download Recebedor.java




Pra vc que gostaria de saber como funciona essa história de socket e não    
tem (ou não quer) a documentação do java em mãos. Isto foi testado    
entre uma m´aquina windos (cmd) e um linux (bash) chamando a classe    
Main na linha de comando, :D    
  
Aviso q deu pau com meu firewall no começo, mas depois foi legal.  
  
nota: quando levantei conexão primeiro na máquina windows, deu  
conexão refused, :D mas quando eu levantei primeiro no linux, bom, aí  
vc conclui pq eu uso linux...  

  



Esconder código-fonte

/*

By Sombriks


Este código é de domínio público, Vc pode fazer o que quiser com ele!
E se o seu quarteirão pegar fogo por culpa deste código não me culpe, :D

slackcontato: sombriks@gmail.com

ps: compilado com o java 1.5, mas se vc tirar todos os statics imports 
e ajeitar os out.println() pra System.out.println(); talvez funcione, :D

*/
import static java.lang.System.*;

import java.net.Socket;
import java.net.ServerSocket;
import java.net.UnknownHostException;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.IOException;

public class Recebedor extends AbstractTransfer{
   
   private ServerSocket ss;
   private Socket s;
   
   public Recebedor(int p){
      
      try{
         ss=new ServerSocket(p);
//       }catch(UnknownHostException e1){
//          out.println("Host desconhecido, :D");
//          e1.printStackTrace();
      }catch(IOException e){
         out.print("Segue a Stack: ");
         e.printStackTrace();
      }
   }
   
   public String receive(){
      try{
         //isto eh pq se ele não for nulo, "s" passa a escutar outra porta.
         if(s==null)s=ss.accept();
         perpareTransfer(s);
         String sss=br.readLine();
         //System.out.println(sss);
         //s.close();
         return sss;
      }catch(IOException e){
         e.printStackTrace();
      }
      return null;      
   }
//    public static void main(String []a) throws IOException{
//       Recebedor rc= new Recebedor(2424);
//       System.out.println(rc.receive());
//    }
}

Scripts recomendados

Comunicação através de datagramas

nome para ip & ip para nome com ping

Script de comunicação

Informações sobre URL's

Socket em janela lembra o msn


  

Comentários
[1] Comentário enviado por FFC em 19/10/2007 - 20:59h

muito bom
valeu


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts