Ir para conteúdo
Fórum Script Brasil

Kyubi

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que Kyubi postou

  1. Olá pessoal eu to trabalhando em um programa que usa o sistema cliente/servidor sendo o cliente usa java script e acessa o servidor via rede e o servidor foi feito em java, infelizmente eu iniciei a programaçao em java a pouco tempo e estou com uma duvida de como proceder para que o servidor me mostre o ip e o nome da maquina que está acessando o servidor. se alguém puder me dar umas dicas eu agradeço. vale lembrar que eu sou iniciante e sei muito pouco ainda sobre as classes e como usa-lás. Servidor package rede; import com.sun.media.sound.SoftShortMessage; import com.sun.media.sound.SoftSynthesizer; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.Socket; import javax.sound.midi.MidiDevice; import javax.sound.midi.MidiMessage; import javax.sound.midi.MidiSystem; import javax.sound.midi.ShortMessage; public class Servidor { public static void main(String[] args) { //Declaro o ServerSocket ServerSocket serv=null; //Declaro o Socket de comunicação Socket s= null; //Declaro o leitor para a entrada de dados BufferedReader entrada=null; try{ //Cria o ServerSocket na porta 7000 se estiver disponível serv = new ServerSocket(7000); System.out.println ("Servidor iniciado. Aguardando o Cliente iniciar."); //Aguarda uma conexão na porta especificada e cria retorna o socket que irá comunicar com o cliente s = serv.accept(); System.out.println ("O cliente se conectou!"); InputStreamReader isr = new InputStreamReader (s.getInputStream()); //Cria um BufferedReader para o canal da stream de entrada de dados do socket s entrada = new BufferedReader(isr); if (entrada != null){ System.out.println("entrou qualquer coisa"); //System.out.println(entrada.readLine()); //teste. ShortMessage msg = null; //System.out.println(entrada.read()); //byte[] Byte = entrada.readLine().getBytes(); //System.out.println(Byte); //int tamanho = Byte.length; //System.out.println(tamanho); //for (int i = 0; i <= tamanho - 1; i++){ //msg.getMessage() = Byte; // System.out.print(Byte +" "); //} System.out.println("Lendo Dados."); System.out.println(entrada.readLine()); System.out.println(entrada.readLine()); System.out.println(entrada.readLine()); System.out.println(entrada.readLine()); //System.out.println(tamanho); } //Aguarda por algum dado e imprime a linha recebida quando recebe //System.out.println(entrada.readLine()); //System.out.println(entrada.readLine()); //trata possíveis excessões de input/output. Note que as excessões são as mesmas utilizadas para as classes de java.io }catch(IOException e){ //Imprime uma notificação na saída padrão caso haja algo errado. System.out.println("Algum problema ocorreu para criar ou receber o socket."); }finally{ try{ //Encerro o socket de comunicação s.close(); //Encerro o ServerSocket serv.close(); }catch(IOException e){ } } } } Cliente package rede; import java.io.IOException; import java.io.OutputStream; import java.io.PrintStream; import java.net.Socket; import java.util.logging.Level; import java.util.logging.Logger; import javax.sound.midi.InvalidMidiDataException; import javax.sound.midi.MidiSystem; import javax.sound.midi.ShortMessage; public class Cliente { public static void main(String[] args) { //Declaro o socket cliente Socket s = null; //Declaro a Stream de saida de dados PrintStream ps = null; try{ ShortMessage msg = new ShortMessage(); int comando = 144; msg.setMessage(comando,1,44,127); //Cria o socket com o recurso desejado na porta especificada s = new Socket("127.0.0.1",7000); System.out.println ("Conectando ao servidor."); OutputStream os = s.getOutputStream(); //Cria a Stream de saida de dados ps = new PrintStream(s.getOutputStream()); //Imprime uma linha para a stream de saída de dados ps.println(msg.getCommand()); ps.println(msg.getChannel()); ps.println(msg.getData1()); ps.println(msg.getData2()); //ps.println(" "); os.close(); //Trata possíveis exceções } catch (InvalidMidiDataException ex) { Logger.getLogger(Cliente.class.getName()).log(Level.SEVERE, null, ex); }catch(IOException e){ System.out.println("Algum problema ocorreu ao criar ou enviar dados pelo socket."); }finally{ try{ //Encerra o socket cliente s.close(); }catch(IOException e){} } } }
×
×
  • Criar Novo...