Um pouco de Java e Sockets. (Fonte 02: Enviador)
Publicado por sombriks 03/01/2006
[ Hits: 6.974 ]
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!!!");
// }
}
Nome da máquina e o endereço IP sem socket.
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
Contorno de BUG do "color picker" para COSMIC Desktop
Pós Instalação do POP! OS 24.04
Contorno para BUG de som no COSMIC Desktop
Pfsense inacessivel após um periodo de tempo [RESOLVIDO] (3)









