Ir para conteúdo
jp_li

Como integrar o servidor Socket na minha MainFrame?

Recommended Posts

Possuo uma MainFrame e uma classe Cliente e estou tentando fazer uma conexão servidor/cliente.
Integrei o servidor dentro da MainFrame e gostaria de enviar mensagens para meu cliente, de forma que o cliente receba mensagens com valores dentro da mainFrame.

Dentro da main eu abri a conexão Socket:

 ServerSocket server = new ServerSocket(3001);
        Socket s = server.accept();
        
        System.out.println("Conectado!");
        DataOutputStream dcs = new DataOutputStream(s.getOutputStream());
        dcs.writeUTF("Bem vindo, você se conectou!");


E possuo a classe Leitor:


       

public class Leitor extends SwingWorker<Void, Double>  {        
                    
                    Random rand = new Random();
        
        @Override
        protected  Void doInBackground() throws InterruptedException, IOException {
          
                while (!flag) {
                    Double valor =(rand.nextDouble() * 100);
                    publish(valor);
                    
                    if (valor > 90) {
                       newlbl.setText ("A temperatura está alta!");
                    
                       
                    }
                    else if (valor < 15) {
                        newlbl.setText ("A temperatura está baixa!");
                        
                    }
                    if(valor >15 & valor <90) {
                        newlbl.setText("Temperatura estável");
                   
                    }
                    Thread.sleep(7500);
               
                   }
                                    
           return null;

        }

Gostaria que em cada if dentro da void doInBackground eu pudesse enviar a mesma mensagem que eu estou setando(vai ficar se atualizando sempre, pois estou gerando valores aleatorios), usando o dcs.writeUTF(), porém preciso que a classe leitor possuo o Socket s, e o dataOutputStream dcs. Qual seria a solução? 


Essa é minha class Cliente.java:

  public static void main(String[] args) {
        try {
        Socket s = new Socket("127.0.0.1", 3001);
       
        DataInputStream dis = new DataInputStream(s.getInputStream());
       
        String msg = dis.readUTF();
        System.out.println(msg);
       
        }catch (Exception e){}
    }

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por gregory freire
      Boa tarde,
       
      Desenvolvi um aplicativo e gostaria de saber se existe alguma forma de forçar a execução dele para que o mesmo não pare o processo quando estiver em segundo plano no Sistema Android, da forma que funciona hoje, após 5 minutos o aplicativo é fechado se estiver em segundo plano. Se fazendo necessário novo login. 
      Outra duvida seria, quando o aplicativo está em segundo plano, como fazer para informações enviadas para o aplicativo sobreporem a tela do aparelho. 
       
      att,
       
      Gregory Freire
    • Por Werlang
      Olá. Sou o criador da plataforma gladCode, onde você cria gladiadores desde sua aparência, atributos físicos e mentais até a programação de seu comportamento, e os coloca para lutar contra gladiadores de outros jogadores em uma arena virtual.A programação do comportamento deles conta com uma série de funções, e uma vez dentro da arena eles se comportam de maneira autônoma, sem intervenção de seu mestre.
      Segue o link para o vídeo promocional da plataforma:
       
       
      Visitem a gladCode no site https://gladcode.tk
      Ou a página do Facebook: https://www.facebook.com/gladcode/
      Seria uma honra ter a visita de vocês no site, bem como esclarecer todas suas dúvidas.
       
    • Por MateusOFCZ
      Olá, gostaria de saber como eu faço para mostrar uma imagem diferente ao acessar o site...
      Eu precisaria mostrar a imagem linkada, ou seja, quando clickar na imagem ela levará você para um link, porém cada imagem tem um link diferente, como faço isso?
      Caso você não tenha entendido seria uma espécie de "anúncios" em meu site, toda vez que reentrar nele irá mostrar uma imagem diferente, e essa imagem será linkada, e os links também serão diferentes um do outro.
    • Por ruberlanwesley
      Eu estou usando a API do Facebook restfb consigo inserir normalmente um comentário em um post no facebook, mas para responder o comentário não consigo assimilar como tornar isso possível.
       
      Eu estou usando Java, Netbeans e a biblioteca restfb, e consultando Facebook graph-api Comment, mas não faço ideia de como fazer em Java.
       
      Para inserir o comentário no post:
      FacebookType response = clienteFacebook.publish(idPost + “/comments”, FacebookType.class, Parameter.with(“message”, comentario));
      System.out.println(“fb.com/” + response.getId());
       
      Para responder o comentário estou tentando sem sucesso:
      FacebookType response = clientFacebook.publish(idComment + “/comments”, FacebookType.class, Parameter.with(“message”, respostaComentario));
      System.out.println(“fb.com/” + response.getId());
       
      Eu não posso responder ao comentário seguindo o mesmo padrão de inserir comentário no post, alguém pode me ajudar a responder um comentário?
    • Por bobzznnn
      Como deixo a seleção do radio marcada após o usuario escolher "yes" ou "no" e mandar a informação pra tabela usuario em PhpMyAdmin
      <div class="container" style="width:500px;"> <h3 class="text-center">Compound</h3> <div class="radio"> <input type="radio" name="compound" value="yes" />Yes <br /> <input type="radio" name="compound" value="no" />No <br /> </div> <div id="result"></div> </div> <br />  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.