Um pouco de Java e Sockets. (Fonte 02: Enviador)
Publicado por sombriks 03/01/2006
[ Hits: 6.987 ]
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!!!");
// }
}
Comunicação através de datagramas
Um pouco de Java e Sockets. (Fonte 04: Main)
Nome da máquina e o endereço IP sem socket.
Instalação do K3s Single-Node com Rancher no Ubuntu 24.04
Usei o NotebookLM para Auditar Logs do Linux
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
WiFi Seguro: EAP-TLS com FreeRADIUS e Active Directory (LDAP).
Midia de instalação LM-21.3 não inicializa (1)
Necessário autenticar ao imprimir - Ubuntu X Windowns (2)
Vou destruir sua infância:) (8)









