私聊java代码实现 java实现聊天室私聊

java如何实现QQ私聊

这很简单谈困吧,在服务器端维持一州指个hashtableIP,Socket之类的

创新互联服务项目包括朝阳网站建设、朝阳网站制作、朝阳网页制作以及朝阳网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,朝阳网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到朝阳省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

私聊不就是两个对册侍配应IP的Socket通信问题

java中在cmd中实现私聊和公聊 就是开好几个cmd 求代码急急急???

import java点虐 .*;

import java.io.*;

public class ClientSocket1 {

static Socket server;

public static void main(String[] args) throws Exception {

server = new Socket(InetAddress.getLocalHost(), 5678);

BufferedReader in = new BufferedReader(new InputStreamReader(

server.getInputStream()));

PrintWriter out = new PrintWriter(server.getOutputStream());

BufferedReader wt = new BufferedReader(new InputStreamReader(System.in));

while (true) {

String str = wt.readLine();

out.println(str);

out.flush();

if (str.equals("end")) {

break;

}

System.out.println(in.readLine());

}

server.close();

}

}

import java.io.*;

import java点虐 .*;

public class ServerSocket1 {

public static void main(String[] args) throws IOException {

ServerSocket server = new ServerSocket(5678);

while (true) {

Socket client = server.accept();

BufferedReader in = new BufferedReader(new InputStreamReader(

client.getInputStream()));

PrintWriter out = new PrintWriter(client.getOutputStream());

while (true) {

String str = in.readLine();

System.out.println(str);

out.println("has receive....");

out.flush();

if (str.equals("没睁end"))

break;

}

client.close();

}

}

}

不完全枯虚岁,但是相似,反正用socket编程就誉咐能实现了

如何用java做一个聊天小程序 要求使用图形用户界面,可以实现一个聊天室中多人聊天,也可以两人私聊,

给你一个简单的实现吧拍饥,注意一戚贺慎定要高敬先运行MyServer.java

//MyCilent.java

import java.io.*;

import java点虐 .*;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class MyClient extends JFrame implements ActionListener{

JTextField tf;

JTextArea tx;

JButton bt;

PrintWriter out;

public MyClient(){

tf=new JTextField(20);

tx=new JTextArea();

tx.setLineWrap(true);

tx.setWrapStyleWord(true);

JPanel pan=new JPanel();

JScrollPane jsp=new JScrollPane(tx);

add(jsp,"Center");

bt=new JButton("SEND");

bt.addActionListener(this);

pan.add(tf);

pan.add(bt);

add(pan,"South");

this.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

setTitle("THE CLIENT");

setSize(400,300);

setVisible(true);

try{

Socket socket=new Socket("127.0.0.1",1680);

out=new PrintWriter(socket.getOutputStream(),true);

InputStreamReader in = new InputStreamReader(socket.getInputStream());

BufferedReader sin=new BufferedReader(in);

String s;

while(true){

s=sin.readLine();

tx.append("#Server Said#: "+s+"\n");

}

}catch(Exception e){

e.printStackTrace();

}

}

public void actionPerformed(ActionEvent e){

if(e.getSource()==bt){

tx.append("@Client Said@: "+tf.getText()+"\n");

out.println(tf.getText());

tf.setText("");

}

}

public static void main(String[] args){

MyClient mct = new MyClient();

}

}

//MyServer.java

import java.io.*;

import java点虐 .*;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class MyServer extends JFrame implements ActionListener{

JTextField tf;

JTextArea tx;

JButton bt;

JScrollPane jsp;

JPanel pan;

PrintWriter out;

public MyServer(){

tx=new JTextArea();

tx.setLineWrap(true);

tx.setWrapStyleWord(true);

jsp=new JScrollPane(tx);

tf=new JTextField(20);

bt=new JButton("SEND");

bt.addActionListener(this);

pan=new JPanel();

pan.add(tf);

pan.add(bt);

add(pan,"South");

add(jsp,"Center");

this.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

setTitle("THE SERVER");

setSize(400,300);

setVisible(true);

try{

ServerSocket server = new ServerSocket(1680);

Socket socket = server.accept();

InputStreamReader in = new InputStreamReader(socket.getInputStream());

BufferedReader sin=new BufferedReader(in);

out=new PrintWriter(socket.getOutputStream(),true);

while(true){

String s=sin.readLine();

tx.append("@Client Said@: "+s+"\n");

}

}catch(Exception e){

e.printStackTrace();

}

}

public void actionPerformed(ActionEvent e){

if(e.getSource()==bt){

String st = tf.getText();

tx.append("#Server Said#: "+st+"\n");

out.println(st);

tf.setText("");

}

}

public static void main(String[] args){

MyServer msr = new MyServer();

}

}

java实现聊天室是怎么做到的?

Java实现聊天室可以采用网络编程搏衡中的Socket和ServerSocket技术来实现。具体实现步骤如下:

服务器端创建ServerSocket对象,并指定一个端口号来监听客户端的连接请求。

客户端创建Socket对象,并指定服务器端的IP地址和端口号来连接服务器。

服务器端通过ServerSocket.accept()方法等待客户端的连接请求,当有新的连接请求到达时,创建一个新的线程来处理该客户端的请求,并将该线程加入到线程池中。

客户端连接服务器后,通过Socket.getInputStream()方法获取输入流,并通过Socket.getOutputStream()方法获取输出流,向服务器发送消息或接收来自服务器的消息。

服务器端通过线程池中的线程来处理客户端的请求,服务器可以实现广播功能,将接收到的客户端消息转发给其他所有客户端,也可以实现点对点的私聊功能。

当客户端退出聊天室时,需要关闭相应的Socket连接,并通知其他客户端该客户端已经离开。

聊天室中的消息可以使用特定的格式进行编码和解码,以便服务器端和客户端可以正确地解析和处理消息。

需要注意的是,在实现聊天室时需要考虑线程安全、消息编解码、异常处理等问题,以确保聊天室的稳定和可靠性。同时郑乱,还需要进行充分喊银档的测试和优化,以提高聊天室的性能和用户体验。


分享名称:私聊java代码实现 java实现聊天室私聊
网站网址:http://scjbc.cn/article/ddpehgd.html

其他资讯