Member 13896070 Ответов: 0

Где я должен создать server.accept() таким образом, чтобы я мог отправлять сообщения нескольким клиентам


Server

public class JavaApplication17 extends javax.swing.JFrame {
    
    public JavaApplication17() {
        initComponents();
    }

                   
    private void initComponents() {

        msg_txt = new javax.swing.JTextField();
        jScrollPane1 = new javax.swing.JScrollPane();
        msg_area = new javax.swing.JTextArea();
        send = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        msg_txt.setText("Enter ur message");
        msg_txt.addMouseListener(new java.awt.event.MouseAdapter() {
            @Override
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                msg_txtMouseClicked(evt);
            }
        });
        msg_txt.addActionListener(new java.awt.event.ActionListener() {
            @Override
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                
                msg_txtActionPerformed(evt);
            }
        });

        msg_area.setColumns(20);
        msg_area.setRows(5);
        jScrollPane1.setViewportView(msg_area);

        send.setText("Send");
           send.addActionListener(new java.awt.event.ActionListener() {
            @Override
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                sendActionPerformed(evt);
            }

            private void sendActionPerformed(ActionEvent evt) {
     while(true)
     {
                try
         {
           s=ser.accept();
    dout=new DataOutputStream(s.getOutputStream());
    msg_out = msg_txt.getText().trim();
                    dout.writeUTF(msg_out);
                    dout.close();
         }
         /* */  catch(Exception ex)
{
}
       
     }          
            }
        });

        

    private void msg_txtMouseClicked(java.awt.event.MouseEvent evt) {                                     
       
         msg_txt.setText("");
    }                                    

    private void msg_txtActionPerformed(java.awt.event.ActionEvent evt) {                                        
   
    }                                       

    
    public static void main(String args[]) {
     
        java.awt.EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {
                new JavaApplication17().setVisible(true);
                  try {
                    ser= new ServerSocket(9999);
                    
                } 
                  catch(IOException ex)
                  {
            }
                  }
        });
    }


Что я уже пробовал:

Если я создал его в действии отправки из-за цикла, я не могу снова отправить сообщение

0 Ответов