public class Clien
{
private static Socket socket;
public static void main(String[] args)
{
try
{
connect();
}
catch (IOException e)
{
e.printStackTrace();
}
}
private static void connect() throws IOException {
InetAddress addr = InetAddress.getByName("127.0.0.1");
socket = new Socket(addr, 9999);
System.out.println("客户端发出socket=" + socket);
CGetMessage gm = new CGetMessage(socket);
CSendMessage sm = new CSendMessage(socket);
Thread gt = new Thread(gm);
Thread st = new Thread(sm);
gt.start();
st.start();
}
}
public class CGetMessage implements Runnable
{
BufferedReader bufferedReader; // 读取信息流
public CGetMessage(Socket socket)
{
// TODO Auto-generated constructor stub
try {
this.bufferedReader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void run()
{
// TODO Auto-generated method stub
String value = "";
try
{
while (true)
{
value = this.bufferedReader.readLine();
if (null != value && !value.trim().equals(""))
{
System.out.println("服务器说:" + value.trim());
}
}
}
catch (IOException e)
{
// TODO: handle exception
e.printStackTrace();
}
}
}
public class CSendMessage implements Runnable
{
PrintWriter printWriter;
BufferedReader bufferedReader;
public CSendMessage(Socket socket) throws IOException
{
// TODO Auto-generated constructor stub
this.printWriter = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())), true);
this.bufferedReader = new BufferedReader(new InputStreamReader(System.in));
}
@Override
public void run()
{
// TODO Auto-generated method stub
String input = "";
try
{
while (true)
{
input = this.bufferedReader.readLine();
if (null != input && !input.trim().equals(""))
{
this.printWriter.println(input.trim());
}
System.out.print("客户端说:" + input.trim());
}
}
catch (IOException e)
{
// TODO: handle exception
e.printStackTrace();
}
finally
{
this.printWriter.flush();
}
}
}
分享到:
相关推荐
在本文中,我们将深入探讨Java Socket客户端代码及其在创建基于Socket的聊天室客户端中的应用。 首先,理解Socket的基本概念至关重要。Socket是TCP/IP协议族的一部分,允许两台机器(通常是一个服务器和一个客户端...
本示例“java socket多客户端之间通信”着重于如何利用Socket实现多个客户端通过服务器进行相互之间的消息传递,包括群发和定向发送。下面我们将深入探讨相关知识点。 1. **Socket基本概念**: Socket在Java中被...
Java Socket 是一种网络通信协议,它是Java编程语言中实现客户端-服务器模型的基础。Socket 提供了低级别的、面向连接的、双向通信的网络接口,允许应用程序通过网络进行数据传输。在本示例中,我们将深入探讨Java ...
java 中的socket开发的简单聊天服务器
Java Socket聊天室是一种基于Java编程语言实现的网络通信应用,它利用了Socket接口来构建一个局域网内的多人聊天环境,类似于QQ群的功能。在这个项目中,开发者运用了多线程技术来处理并发的用户交互,同时利用...
Java Socket聊天室是一种基于Java编程语言实现的网络通信应用,主要利用了Socket编程接口来创建客户端和服务器端的连接,从而实现数据的双向传输。在这个系统中,用户可以通过客户端发送消息,服务器端接收到消息后...
Java Socket聊天室是一种基于TCP/IP协议的网络通信应用,它允许客户端和服务端通过Socket进行双向通信,实现数据的交换。本项目提供了一个完整的聊天室实现,包括服务端和客户端的代码,具有图形用户界面(GUI),...
Java Socket聊天室是一种基于Java网络编程技术实现的通信系统,主要使用了Socket接口来构建客户端与服务器端的连接。在这个项目中,用户通过控制台(console)进行交互,体验类似于简单的在线聊天室。以下是对这个Java...
2. **Socket编程**:Java聊天室客户端的核心是网络通信,这通常通过Java的Socket类来实现。Socket是TCP/IP协议的Java实现,负责在客户端和服务器之间建立连接,进行数据传输。客户端通过Socket连接到服务器,发送...
实现Java Socket聊天多线程编程,图形化界面,多人聊天(群聊),私人聊天,是基于本地模拟的Java聊天程序。 Java Socket聊天程序是我用了三天的时间写出来,用Netbeans建的工程,图形化界面是Netbeans拖拉出来的,...
Java Socket聊天系统是一种基于TCP/IP协议的网络通信应用,它允许两台计算机通过互联网进行双向通信。在这个系统中,Socket充当了通信的桥梁,为应用程序提供了低级别的、面向连接的网络服务。Java的Socket类和...
本项目"Java socket聊天软件 服务器和用户分开,可断开重连恢复聊天"是一个典型的实例,它展示了如何使用Java Socket API创建一个支持多人聊天、能够处理断线并自动重连的系统。下面我们将深入探讨其中涉及的关键...
在这个"Java socket聊天室+窗口抖动"项目中,我们将探讨如何使用Java Socket构建一个基本的多人在线聊天室,并且实现窗口抖动功能,以增加用户体验。 首先,我们要理解Socket的工作原理。Socket是两台计算机之间...
本教程将详细讲解如何利用Java Socket实现基于TCP/IP的服务端和客户端之间的报文发送与接收。 TCP(传输控制协议)是一种面向连接、可靠的传输协议,它确保了数据包的有序和无损传输。IP(互联网协议)则是互联网上...
在这个"Java Socket 通信服务与客户端完整示例"中,我们可以深入理解Socket通信的原理以及如何在实际项目中应用。 1. **Socket基本概念** - **ServerSocket**: 服务器端使用的类,用于监听客户端的连接请求。 - *...
在这个"Java Socket聊天和文件传输工具"中,开发者利用Socket API创建了一个实用的工具,能够实现用户间的文本聊天功能以及文件的传输。虽然源代码未提供,但我们可以根据已知的信息探讨其背后的原理和技术要点。 1...
1. Java Socket编程:Java聊天客户端的核心是Socket编程,通过创建ServerSocket和Socket对象来建立客户端与服务器之间的连接。ServerSocket在服务器端监听特定端口,等待客户端的连接请求,而Socket则代表客户端与...
Java Socket聊天程序是一种基于网络通信的多用户交互应用,它利用Java的Socket API来实现客户端与服务器之间的实时通信。在本程序中,我们主要探讨以下几个关键知识点: 1. **Java Socket API**: Java Socket是Java...
在这个聊天室中,Java Socket被用作服务器端,接收来自客户端(AS3应用)的数据,同时发送信息给其他在线用户。 **聊天室架构**: 1. **客户端**:通常由AS3编写,负责显示用户界面,如文本输入框、聊天窗口和发送...