依旧是自己平时用到的一些东西的整理
Socket客户端:
public class SocketClient {
public static void main(String[] args) {
Socket socket = null;
OutputStream out = null;
InputStream in = null;
try {
socket = new Socket();
// connect and set timeout
socket.connect(new InetSocketAddress("127.0.0.1",8333), 2000);
in = socket.getInputStream();
out = socket.getOutputStream();
out.write("abcd".getBytes());
out.flush();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
in.close();
out.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
Socket服务器端:
public class SocketServer {
public static void main(String[] args) {
try {
// 实例化sSocket,参数为端口号port
ServerSocket serverSocket = new ServerSocket(8333);
while (true) {
// 实例化Socket
Socket socket = serverSocket.accept();
// 新建线程TCPServer,并启动
new Thread(new ServerSocketTask(socket)).start();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
public class ServerSocketTask implements Runnable {
private Socket socket;
public ServerSocketTask(Socket socket) {
this.socket = socket;
}
@Override
public void run() {
// 定义输出流
OutputStream output = null;
// 定义输入流
InputStream input = null;
try {
// 初始化输入流
input = this.socket.getInputStream();
// 初始化输出流
output = socket.getOutputStream();
String message = null;
while (true) {
// 定义byte[]数组,大小为1024;
byte[] buf = new byte[1024];
// 从输入流中读取输入存入字节数组
int len = input.read(buf);
// 将字节数组转换成字符串
message = new String(buf,0,len);
//* 实际使用中这里要用System.arrayCopy把byte数组拼起来,判断到结束条件后再break
System.out.println(message);
// 向输出流写入SUCCESS返回给客户端
output.write("SUCCESS".getBytes());
// 输出流flush
output.flush();
// 跳出循环
break;
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
"JAVA核心知识点整理.zip"这个压缩包文件包含了对Java进阶学习的重要知识点的详细概述,主要集中在PDF文档"JAVA核心知识点整理.pdf"中。以下是这份资料可能涵盖的主要内容: 1. **Java基础**:首先,你会学到Java的...
这份"JAVA核心知识点整理——java自学资料.rar"包含了一份详细的Java学习资源,旨在帮助已经具备一定Java基础知识的开发者进一步提升技能,深入理解Java的底层机制。以下是这份资料可能涵盖的一些核心知识点和学习...
这份"2020最新JAVA核心知识点整理,完整.zip"压缩包包含了全面的Java核心知识点,旨在帮助程序员,尤其是准备面试的开发者,深入理解并掌握Java的基础与高级特性。 1. **Java基础**:这部分内容可能涵盖变量、数据...
Java面试知识点整理总结涵盖了多个关键领域,这对于求职者或希望提升技术能力的Java开发者来说是宝贵的资源。以下是对这些主题的详细阐述: 1. **Java基础**:这是学习任何编程语言的基础,包括变量、数据类型、...
以下是对标题、描述和标签的详细解释,以及可能出现在"JAVA核心知识点整理.pdf"中的关键内容: 一、基础语法 1. 变量与数据类型:理解基本数据类型(如int、float、char)和引用数据类型(如对象、数组)。掌握声明...
这份"JAVA核心知识点整理"涵盖了Java语言的基础到高级概念,旨在帮助开发者全面理解并熟练掌握Java技术。以下是一些关键知识点的详细说明: 1. **基础语法**:Java的基础包括变量、数据类型(如整型、浮点型、字符...
Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。为了在Java面试中脱颖而出,了解并掌握核心知识点至关重要。...理解并熟练运用这些知识点,将为你的Java面试之路打下坚实基础。
针对"JAVA期末复习知识点整理"这个主题,我们可以深入探讨Java的核心概念、语法结构以及它在K12教育阶段的应用。 首先,让我们从基础开始。Java是一种面向对象的语言,它的基本语法包括变量、数据类型、运算符、...
"一点课堂 JAVA核心知识点整理.zip"这个压缩包文件包含了关于Java编程的关键概念和技能的详细总结,非常适合初学者和有经验的开发者进行学习和复习。 首先,Java的核心知识点包括基础语法。这包括变量声明、数据...
这份"【Java面试资料】-JAVA核心面试知识点整理"PDF文档,很可能是求职者或开发者提升技能、准备面试的重要参考资料。以下是根据标题和描述提炼出的一些关键Java面试知识点,以及它们在实际编程和面试中的重要性。 ...
为了帮助你在期末考试中取得优异成绩,这份“JAVA期末复习知识点整理”涵盖了Java语言的核心概念和重要特性。下面,我们将深入探讨这些关键知识点。 1. **Java基础语法**:包括变量声明、数据类型(基本类型与引用...
这份"JAVA核心知识点整理.rar"文件显然包含了对Java编程语言关键概念的深度概述。PDF文档"JAVA核心知识点整理.pdf"可能涵盖了以下几个重要的Java学习主题: 1. **Java基础**:这部分通常包括Java的历史背景、环境...
Java学习资源知识点整理 在Java学习的道路上,深入理解各个领域的知识是至关重要的。本资源包涵盖的内容丰富,包括Java核心、操作系统管理以及相关的技术框架,旨在帮助开发者全面提升技术能力。 1. **Java核心** ...