Java Socket通信 客户端服务器端基本代码

【服务器端】

import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class TestServer {

	public static void main(String[] args) {
		try {
			System.out.println("启动服务端");
			ServerSocket sv = new ServerSocket(2233);
			//等待用户链接
			Socket socket = sv.accept();
			System.out.println("有用户链接!");
			while (true) {
				//1
				InputStream is = socket.getInputStream();
				//2
				byte[] data = new byte[128];
				is.read(data,0,data.length);
				//3 按照格式转成字符串输出
				String msg = new String(data, "UTF-8");
				//收到的内容
				System.out.println("收到的内容:"+ msg);
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

}

【客户机端】

import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;

public class TestClient {

	public static void main(String[] args) {
		try {
			Socket socket = new Socket("192.169.191.4", 2244);
//			Socket socket = new Socket("localhost", 2233);
			System.out.println("链接服务器成功!");
			while (true) {
				System.out.println("请输入内容:");
				//1
				Scanner input = new Scanner(System.in);
				String msg = input.next();
				//2
				OutputStream os = socket.getOutputStream();
				//3
				byte[] data = msg.getBytes("UTF-8");
				os.write(data);
				os.flush();
			}
		} catch (UnknownHostException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

}
时间: 2024-11-11 00:12:18

Java Socket通信 客户端服务器端基本代码的相关文章

Socket通信——C++服务器端和Java客户端

一句话来说就是,C++和Java 通过socket进行通信.数据传输,通过发送"字节流"即可. 字节对于C++和java来说是通用的,但是传输的过程有许多问题需要注意,我为了弄清楚这个过程,查了一些资料,做了一些整理. 不了解C++ socket编程,可以看这篇博客: Linux 下:socket通信(Linux下,C/C++语言):http://blog.csdn.net/giantpoplar/article/details/47657303 Windows下:winsock:ht

java socket通信-传输文件图片--传输图片

ClientTcpSend.java   客户端发送类 package com.yjf.test; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.net.InetSocketAddress; import java.net.Socket; public class ClientTcpSend { public static String clien

java Socket通信使用BufferedReader和BufferedWriter的注意事项

注意事项:readLine()要求有换行标识,write()要输出换行标识,要调用flush()刷新缓冲区. 以下是取自java socket通信中的一小段代码. BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream())); BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(socket.get

java Socket通信,客户端与服务端相互发消息

1.通信过程 网络分为应用层,http.ssh.telnet就是属于这一类,建立在传输层的基础上.其实就是定义了各自的编码解码格式,分层如下: 2.Socket连接 上述通信都要先在传输层有建立连接的基础上才能完成,TCP通过三次握手建立连接:   Socket与http的区别可以看下这个: https://www.cnblogs.com/meier1205/p/5971313.html 还有搜索:http下午茶 3.JAVA socket 客户端与服务端互发消息 实现结构图:   客户端和服务

Java Socket通信介绍及可能遇到的问题解决_java - JAVA

文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 前言 本文主要给大家介绍了关于Java中Socket通信的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. Java中基于TCP协议实现网络通信的两个类:客户端的Socket和服务器端的ServerSocket. Socket通信模型如图所示: 不管Socket通信的功能有多复杂,任何socket通信过程的基本结构都是一样的. 其基本步骤为: ①分别在客户端和服务器端创建Socket和Ser

Socket通信客户端和服务端代码

这两天研究了下Socket通信,简单实现的客户端和服务端代码 先上winfrom图片,客户端和服务端一样 服务端代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; usin

【Java】Java Socket 通信示例

用socket(套接字)实现客户端与服务端的通信. 这里举两个例子: 第一种是每次客户端发送一个数据,服务端就做一个应答.(也就是要轮流发) 第二种是客户端可以连续的向服务端发数据,服务端也可以连续向客户端发数据.(多线程) 为了方便起见,客户端服务端都放在一个主机上,分别开两个进程[哈哈,进程间通信lol~] PS: 一个聊天程序雏形 代码也放在GitHub上了:https://github.com/MummyDing/socketChatDemo Demo 1: 简单的Socket通信,一人

Java Socket通信实现私聊、群聊

前言 闲言少叙,上代码! 代码编写 server服务端 /** * 服务端 */ public class Server { private static ServerSocket server = null; private static Socket ss = null; /** * 客户端集合 */ private static Map<String, ServerThread> serverThreadMap = new HashMap<String, ServerThread&

Java]Socket和ServerSocket服务器端接受数据

java socket 与  ServerSocket 某次写一个智能设备上传数据,数据每次三秒一条,然后使用c++写的客户端,没有对应java的源码,只能自己手写了,期间各种问题现在总结下 首先用的框架是ssh(我想用那个应该是没什么差别),因为是添加到web项目中的,so我想到的是tomcat启动的时候启动,于是首先必须要有的是后台程序,否则tomcat无法启动成功:话不多说,上源码... web.xml中我最后选用的是listener  监听还有一种是servlet  应该都可以 我最后选