Sockets

Páginas: 5 (1110 palavras) Publicado: 28 de abril de 2013
Trabalho Prático N.º3

Disciplina: Comunicação de Dados

Alunos: João Pedro Costa Alves Coelho
N.º11488
Keven Paulino Gonçalves Moreira
N.º 12151

Curso: EERC

Os sockets estão localizados no pacote java.net. Basicamente precisamos das classes Socket e ServerSocket para conseguir implementar uma aplicação básica. A classe Socket implementa o socket cliente. Paraconstruir um socket precisamos saber qual é o IP que desejamos conectar e a porta de conexão (que varia de 0 a 65535). A classe ServerSocket fornece a interface de rede necessária para que a aplicação possa funcionar como um servidor TCP. Para criar um ServerSocket precisamos saber qual é a porta que será utilizada. Comumente utiliza-se portas acima de 1000 pois as inferiores são utilizadas pelosistema operacional.

Para ilustrar o uso dos sockets, iremos construir uma aplicação bastante simples para comunicação de dois computadores. Um computador ficará aguardando alguma conexão e irá exibir em tela o que foi recebido. Veremos então a classe Servidor e a classe Cliente. 
1. import java.io.BufferedReader;  
2. import java.io.IOException;  
3.import java.io.InputStreamReader;  
4. import java.net.ServerSocket;  
5. import java.net.Socket;  
6.   
7. public class Servidor {  
8.   
9.     public static void main(String[] args) {  
10.           
11.         //Declaro o ServerSocket  
12.         ServerSocket serv=null;   
13.           
14.         //Declaro o Socket de comunicação  
15.         Socket s= null;  16.           
17.         //Declaro o leitor para a entrada de dados  
18.         BufferedReader entrada=null;  
19.                   
20.         try{  
21.               
22.             //Cria o ServerSocket na porta 7000 se estiver disponível  
23.             serv = new ServerSocket(7000);  
24.           
25.            //Aguarda uma conexão na porta especificada e retorna o socket que irá comunicar com o cliente  
26.             s = serv.accept();  
27.               
28.             //Cria um BufferedReader para o canal da stream de entrada de dados do socket s  
29.             entrada = new BufferedReader(new InputStreamReader(s.getInputStream()));  
30.               
31.            //Aguarda por algum dado e imprime a linha recebida quando recebe  
32.             System.out.println(entrada.readLine());   
33.               
34.         //trata possíveis excessões de input/output. Note que as excessões são as mesmas utilizadas para as classes de java.io    
35.         }catch(IOException e){  
36.           
37.             //Imprime uma notificação na saída padrão caso haja algo errado.  
38.            System.out.println("Algum problema ocorreu para criar ou receber o socket.");  
39.           
40.         }finally{  
41.               
42.             try{  
43.                   
44.                 //Encerro o socket de comunicação  
45.                 s.close();  
46.                   
47.                 //Encerro o ServerSocket  
48.                serv.close();  
49.                   
50.             }catch(IOException e){  
51.             }  
52.         }  
53.       
54.           
55.           
56.           
57.           
58.     }  
59. }  

Vamos explicar os pontos importantes da classe acima. Em baixo apenas declaramos as variáveis que iremos utilizar. 
1. //Declaro o ServerSocket  
2.ServerSocket serv=null;   
3.   
4. //Declaro o Socket de comunicação  
5. Socket s= null;  
6.   
7. //Declaro o leitor para a entrada de dados  
8. BufferedReader entrada=null;  

De seguida, criamos o server socket na porta 7000 
1. //Cria o ServerSocket na porta 7000 se estiver disponível  
2....
Ler documento completo

Por favor, assinar para o acesso.

Estes textos também podem ser interessantes

  • Sockets
  • Sockets
  • Sockets
  • Socket
  • Sockets
  • Socket main
  • Biblioteca de sockets
  • Sockets em java

Seja um membro do Trabalhos Feitos

CADASTRE-SE AGORA!