java的socket 编程】的更多相关文章

对于Java Socket编程而言,有两个概念,一个是ServerSocket,一个是Socket.服务端和客户端之间通过Socket建立连接,之后它们就可以进行通信了.首先ServerSocket将在服务端监听某个端口,当发现客户端有Socket来试图连接它时,它会accept该Socket的连接请求,同时在服务端建立一个对应的Socket与之进行通信.这样就有两个Socket了,客户端和服务端各一个. 对于Socket之间的通信其实很简单,服务端往Socket的输出流里面写东西,客户端就可以…
转自:http://www.cnblogs.com/linzheng/archive/2011/01/23/1942328.html 一,网络编程中两个主要的问题 一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输. 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的一台主机. 而TCP层则提供面向应用的可靠(tcp)的或非可靠(UDP)的数据传输机制,这是网络编程的主要对象,一般不需要关心IP层是…
#开头的废话#学习java已经半个月了,原本在抠教材里面的字眼时,觉得教材好厚,要看完不知道要到猴年马月去了.突然在网上看到一个教程,里面老师说学编程语言书不用太细看,看个大概,知道里面讲些什么就好,不用全记得,然后你一个劲地编,使劲地编,编的时候不懂再回来看就好了,这是最快的方法.心里一琢磨,还真是这样,根据以前学C语言的情况不就这样吗.所以便加速看,把一些书里介绍的方法,类飞速地浏览过了,刷到网络这一章,觉得socket编程应该是得试一下手,不要只看不做假把式. 此文为原创,转摘请注明转摘自…
两个Java应用程序可以通过一个双向的网络通讯连接实现数据交换,这个双向链路的一端称为一个Socket.java.net包中定义的两个类Socket和ServerSocket,分别用来实现双向链路的client端和server端.建立连接时所需的寻址信息为远程计算机的IP地址和端口号(port number). 注: 网络编程不等于网站编程,网站编程是基于网络编程基础之上. 一..计算机网络   计算机网络把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大.功能强的网络系统,…
网上对Socket的诠释很多,也很全,在这里我就不多说了,总之,现在的网络处处都在使用Socket.本帖是一个Socket的例子,用来模拟一个简单的登录系统,只有核心代码,访问数据库.输入神马的统统没有,只是带入一行数据进行处理的代码.废话不说,请看代码. 注:Socket依附的传输协议有TCP的,也有UDP的,本帖中只给出TCP的代码. TCPServer类,Socket服务端. import java.io.IOException; import java.net.InetAddress;…
1.创建服务器类 import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; /** * 服务器 * @author Administrator * */ public class Server { private int duankou = 9000;//端口号 private ServerSocket server;//声明服务器 pri…
各I/O模型优缺点 BIO通信模型 BIO主要的问题在于每当有一个新的客户端请求接入时,服务端必须创建一个新的线程处理新接入的客户端链路,一个线程只能处理一个客户端连接 线程池I/O编程 假如所有可用线程都被阻塞,后续I/O都将在队列中排队 线程池采用阻塞队列实现,队列积满之后,后续入队列操作将被阻塞,新的客户端请求被拒绝,发生大量连接超时 NIO编程 缓冲区Buffer 每一种Java基本类型都有对一种缓冲区 大多数标准I/O使用ByteBuffer 通道Channel Channel分为两大…
之前在学校的时候,有时间但是总是学不进去,现在工作了,总想多学点东西,但是又是没有时间来学习,只能在工作的闲暇之余,给自己充充电,随着学习的深入,越来月发现Java真的很强大,几乎什么都可以做的,以下的socket测试用例很早就写下了, 今天简单整理一下,发出来 1.Java根据域名获取ip public class SocketTest { @SuppressWarnings("static-access") @Test public void testInetAddress() t…
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())); String send = scanner.nextLine()+"\n"; System.out.println("客户端已发送:" + send); bw.write(send); bw.flush(); 今天写socket通信的题目的时候,题目要求使用bufferedWriter来发送数…
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream())); PrintWriter writer = new PrintWriter(socket.getOutputStream(), true); // 下面两行代码会将socket关闭 reader.close(); writer.close(); 若在close之后使用socket,则会抛出socket closed异…