Programação  
 
Conhecimento computador >> Programação >> Programação em Java >> 
Java chat Código
A hierarquia de objetos Java inclui várias classes que lidam com muitos tipos de tipos de dados e conexões de dados. O " socket" e classes " ServerSocket " representam ligações simples de um programa Java pode fazer para outro programa através dos portos de um computador. Através desses objetos, um programa Java pode receber dados ou mensagens , como texto , a partir de um computador remoto. Assim, por exemplo , um cliente de chat simples escrito em Java seria executado soquete e ServerSocket objetos para enviar e receber mensagens . Servidor chat e ServerSocket

Na sua forma mais básica, um servidor de chat Java vai usar um objeto ServerSocket para ouvir uma conexão. O método de "aceitar" força o programa de esperar até que uma conexão é estabelecida . Este método retorna um objeto de " soquete ", representando a ligação aceita. Como ilustrado no seguinte exemplo de código , o programa de bate-papo será sempre ouvir por uma conexão de entrada em uma porta específica e retornar a tomada de conexão :

java.net.ServerSocket importação; java.net.Socket importação , importação java . io.BufferedReader ; java.io.InputStreamReader importação;

classe chat {

public static void main ( string [] args ) { ServerSocket s = null; s = new ServerSocket ( 9999) ; soquete s = server.accept (); }}
recebendo mensagens

Uma vez que a conexão é feita , o programador pode ler a entrada da tomada. Esta entrada , a mensagem de uma outra conversa , vai ler em um objeto " BufferedInput " , que pode ler suas informações em uma variável String :

BufferedReader entrada = new BufferedReader (new InputStreamReader ( s.getInputStream () ) ); string message = input.readline ();
armazenar mensagens

ao receber mensagens do computador remoto, ele pode ser benéfico para armazená-los num arranjo de modo que uma mensagem múltipla não é perdida . Na prática, o que o programador pode fazer é armazenar mensagens em uma matriz com um revolving ", enquanto" loop. Para cada mensagem recebida , o loop irá armazenar uma mensagem na matriz e passar para o próximo índice , envolvendo o primeiro índice quando a matriz está cheia :

String [] mensagens = new String [20] ; int index = 0; message = input.readLine ();

while ( mensagem = null !) { mensagens [ índice ] = mensagem ; índice + +; message = input.readLine ();}
< br >
envio de mensagens

O programador também pode usar objetos de soquete para se conectar a um computador remoto que está aguardando as comunicações. Ao utilizar a tomada de ligação, o programador pode abrir um fluxo de saída para enviar uma mensagem para o utilizador . Ela faz isso usando um objeto PrintWriter , anexá-lo ao fluxo de saída do socket e escrever através do socket:

Soquete conectar = new Socket ( " http: \\ \\ www.computer.domain " , 9999) ;

out = new PrintWriter ( connect.getOutputStream () , true); out.print ( " Enviando mensagem ... ");

Anterior :

Próximo : No
  Os artigos relacionados
·Técnicas de depuração Java 
·Como inserir Java Faces como JSP Fragment 
·Como manter Letras no quadro em Java 
·Como alterar o JDK no BEA WebLogic 8.1 
·Como formatar um analisador em uma Cadeia Java 
·Diferenças entre Servlets e JSP 
·Não consigo imprimir linhas usando um Applet Java 
·Android SDK editor de visualização 
·Applet de Comunicação Applet 
·Como definir a barra de rolagem no Java 
  Artigos em destaque
·Como usar o DataGrid para Edição e Exclusão 
·Como converter uma String para um gráfico em C + + 
·Como fazer um programa utilizando o Microsoft Visual C 
·DirectX 9 vs. 10 
·Como converter um Float em String em C Programação 
·Como inserir uma Div em uma Div 
·Como converter Oracle para Expoente 
·Prós e contras de Objective C 
·Como executar um procedimento armazenado Oracle a parti…
·Como substituir os espaços em DOS Substrings 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados