Um pouco de Java e Sockets. (Fonte 02: Enviador)
Publicado por sombriks 03/01/2006
[ Hits: 7.006 ]
Homepage: http://www.google.com/profiles/Sombriks
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...
/*
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.UnknownHostException;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.IOException;
/**
Um exemplo do que fazer com o AbstractTransfer: Enviar dados.
Mais exatamente uma ou outra string, :D
*/
public class Enviador extends AbstractTransfer{
/*
Este ninguém vê, :D
*/
private Socket s;
/**
Informe ao enviador o nome do host (preferência no formato de ip: ex: "10.23.15.56")
e a porta que está sendo escutada por alguém.
*/
public Enviador(String ss,int d){
try{
s=new Socket(ss,d);
}catch(UnknownHostException e1){
out.println("Máquina desconhecida! Pelo menos de ser isso, :D");
e1.printStackTrace();
}catch(IOException e){
out.println("Pau no I/O; muito genérico. Olha a stack aí:");
e.printStackTrace();
}
}
/**
Diga alô mundo, :D
E nada eh tratado aqui, dei throws e empurrei com a barriga, :D
*/
public void send(String ss) throws IOException{
perpareTransfer(s);//lah do AbstractTransfer.
pw.println(ss);//Vamos mandar serializado e via socket a string?
pw.flush();//puxando a descarga...
//s.close();
}
// public static void main(String []a){
// Enviador rc= new Enviador("127.0.0.1",2424);
// rc.send("HaHaHa!!!");
// }
}
Um pouco de Java e Sockets. (Fonte 04: Main)
Comunicação através de datagramas
Nome da máquina e o endereço IP sem socket.
A Fundação da Confiança Digital: A Importância Estratégica de uma PKI CA na Segurança de Dados
Como enviar dicas ou artigos para o Viva o Linux
Como Ativar a Aceleração por GPU (ROCm) no Ollama para AMD Navi 10 (RX 5700 XT / 5600) no Gentoo
Cairo Dock ainda funcional nos dias de hoje
Configuração de IP fixo via nmcli e resolução de nomes via /etc/hosts no Gentoo
Removendo o bloqueio por erros de senha no Gentoo (systemd)
Papel de Parede Animado no KDE Plasma 6 (Com dicas para Gentoo)
Homebrew: o gerenciador de pacotes que faltava para o Linux!
Ajudante para criar dicas e artigos no VOL (31)
Hardware (corpo), Software (mente) e Kernel (conexão) (0)
Tentando fazer um "linux ricing" mas falhando miseravelmente... (3)









