Java网络通信示例
Java网络通信示例
李茂冉 发表于2年前
Java网络通信示例
  • 发表于 2年前
  • 阅读 21
  • 收藏 0
  • 点赞 2
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

##编写javaSocket编程的几种结构

  • 直接使用Socket编程实现
  • 使用Socket,再结合java的多线程编程
  • 使用NIO中的非阻塞(Non Blocking) Socket再结合java的多线程编程
  • 使用Jdk自带的或者第三方的线程池技术对线程进行管理,提高多线程的执行效率
  • 使用开源的java Socket开发框架,例如:mina和cindy框架。

Java网络编程主要使用java.net包

##执行演示网络代码的时候,要先运行服务端,再运行客户端。

###服务端:

public class TCPserver{
	static void print(String str){
		System.out.println(str);
	}
	public static void main(String[]args){
		print("服务器开启成功!");
		java.net.ServerSocket server;
		java.net.Socket client;
		try{
			server=new java.net.ServerSocket(5555);
		//	while(true){
				client=server.accept();
				print("一个客户端连接成功!");
				//接受客户端的信息
				java.io.DataInputStream dis=new java.io.DataInputStream(client.getInputStream());
				String str= dis.readUTF();
				print(str);
				//给客户端发送信息!
				java.io.DataOutputStream dos=new java.io.DataOutputStream(client.getOutputStream());
				dos.writeUTF("你连接成功了!");
				dis.close();
				dos.close();
				client.close();
				print("客户端断开连接!");
		//	}
		}catch(java.io.IOException ex){
			ex.printStackTrace();
		}
	}
}

###客户端


public class  TCPclient{
	static void print(String str){
		System.out.println(str);
	}
	public static void main(String[] args) 
	{
		print("客户端开启成功!");
		try{
			java.net.Socket client=new java.net.Socket("127.0.0.1",5555);
			print("客户端连接成功!");
			String str=javax.swing.JOptionPane.showInputDialog(null,"请输入您要发送的内容!","提示",0);
			//给服务端发送信息
			java.io.DataOutputStream dos=new java.io.DataOutputStream(client.getOutputStream());
			dos.writeUTF(str);
			//接受服务端的信息
			java.io.DataInputStream dis=new java.io.DataInputStream(client.getInputStream());
			print(dis.readUTF());
			dos.close();
			dis.close();
			client.close();
			print("客户端连接断开!");
		}
		catch(java.io.IOException ex){
			ex.printStackTrace();
		}
	}
}
共有 人打赏支持
粉丝 6
博文 103
码字总数 59256
×
李茂冉
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: