Red de conocimiento informático - Conocimiento informático - Preparación del software de mensajería instantánea LAN

Preparación del software de mensajería instantánea LAN

Esto es lo que escribí junto con AWT cuando aprendí por primera vez a comunicarse con j2se. Principalmente programación de sockets. No es difícil comprobar esta información.

El siguiente es el código del cliente:

importar java.awt.*;

importar java.awt.event.*;

importar java.io.IOException;

importar java.net.

la clase pública ChatClient extiende el marco {

Socket s = null

<; p > DataOutputStream dos = nulo

DataInputStream dis = nulo

privado booleano bConnected = falso

TextField tfTxt = new TextField(); >

TextArea taContent = new TextArea();

Thread tRecv = new Thread(new RecvThread());

public static void main(String[] args) {< / p>

new ChatClient().launchFrame();

}

public void launchFrame() {

setLocation(400,400);

this.setSize(300,300);

agregar(tfTxt, BorderLayout.SOUTH);

agregar(taContent,BorderLayout.NORTH);

nuevo ChatClient().NORTH);

pack();

this.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

desconectar();

System.exit(0);

//super.windowClosing(e);

}

}) ;

tfTxt.addActionListener(new TFListener());

setVisible(true);

connect();

tRecv.start();

//new Thread( new RecvThread()).start(); abrir no se puede imprimir entre sí Cliente

> }

public void connect() {

prueba {

s = new Socket("127.0.0.1",8888);

dos = nuevo DataOutputStream(s. getOutputStream());

tRecv.getOutputStream());

dis = nuevo DataInputStream(s.getInputStream());

System.out.println("Conectando!");

bConnected = true;

} captura (U

nknownHostException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

public void desconectar() {

prueba {

dos.close();

dis.

}catch (IOException e) {

e.printStackTrace();

}

/*

/*

p>

prueba {

bConnected = false;

tRecv.join();

}catch (InterruptedException e) {

e.printStackTrace();

}finalmente {

}

*/

}

la clase privada TFListener implementa ActionListener {

public void actionPerformed(ActionEvent e) {

String str = tfText.getText() .trim();

tfText. setText("");

tfText.getText().trim();

}

}

Debes ejecutar. El servidor puede realizar operaciones de puerto de escucha, esperar a que el cliente se conecte y luego podrás chatear.