摘要:
json数据与Java对象的转换使用JSONObject类,包是json-lib;在springboot项目中使用需要添加jdk版本:<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <
阅读全文
posted @ 2019-05-07 13:08
lazyli
阅读(124)
推荐(0)
摘要:
分隔符和定长解码器1、消息长度固定,累计读取到长度总和为定长LEN的报文后,就认为读取到了一个完整的消息;将计数置位,重新开始读取下一个数据报。2、将回车换行符作为消息结束符,例如FTP协议,这种方式在文本协议中应用比较广泛3、将特殊的分隔符作为消息的结束标志,回车换行符就是一种特殊的结束分隔符4、
阅读全文
posted @ 2019-05-05 22:46
lazyli
阅读(303)
推荐(0)
摘要:
TCP粘包/拆包TCP是个"流"协议,所谓流,就是没有界限的一串数据。一个完整的包可能会被TCP拆分成多个包进行发送,也有可能把多个小包合成一个大的数据包进行发送。这就是所谓的TCP粘包/拆包问题。举例:客户端给服务端发送两个数据包:D1和D2;1、服务读分两次读取到了两个独立的数据包,分别为D1和
阅读全文
posted @ 2019-05-05 21:47
lazyli
阅读(299)
推荐(0)
摘要:
NIO:非阻塞I/OServerSocketChannel和SocketChannelBuffer类:缓存区;在NIO库汇总,所有数据都用缓存区处理。在读取数据时,它是直接读到缓冲区中;在写入数据时,它是先写到缓冲区中。任何时候访问NIO的数据,都是通过缓冲区进行操作。缓冲区实质上是一个数组。通常它
阅读全文
posted @ 2019-05-05 21:26
lazyli
阅读(425)
推荐(0)
摘要:
Socket编程传统的socket网络编程是同步或者是阻塞的I/O,服务器每次只能处理一个请求,其他请求阻塞等待
阅读全文
posted @ 2019-05-05 21:21
lazyli
阅读(398)
推荐(0)
摘要:
springboot消息服务JMS(java message service)消息服务:java原生的,不能跨平台;ActiveMQAMQP(advanved message queue protocol)高级消息队列()跨平台,只能发送字节序列;RabbitMQ RabbitMQ核心概念:Mess
阅读全文
posted @ 2019-05-04 20:36
lazyli
阅读(207)
推荐(0)
摘要:
eclipse创建springboot要注意,基本的包名一定要与java中的包名一致,这样才能找到springgboot主程序的入口;主程序是在com.lazy.cache;那么test的包也要是com.lazy.cachesrc/main/java com.lazy.cache CacheAppl
阅读全文
posted @ 2019-05-03 08:21
lazyli
阅读(318)
推荐(0)
摘要:
对象的序列化与反序列化【p213页】当两个进程进行远程通信时,彼此可以发送各种类型的数据,如文本、图 片、语音和视频等。无论不纯二进制序列的形式在网络上传送。当两个 java进程进行远程通信时,一个进程把一个java对象发送到另一个进程 中。不过发送方需要把这个java对象转换为字节序列,才能在网络
阅读全文
posted @ 2019-05-01 22:47
lazyli
阅读(866)
推荐(0)
摘要:
DatagramPacket类DatagramPacket表示数据报,它的构造方法分为两类:一类构造方法创建DatagramPacket对象用来 接受数据,还有一类构造方法创建的Data,还有一类构造方法创建的DatagramPacket对象用来发送 数据。用于发送数据的构造方法需要设定数据报到达的
阅读全文
posted @ 2019-05-01 20:41
lazyli
阅读(1314)
推荐(0)
摘要:
UDP协议:UDP协议传输数据是不可靠的,在java中,java.util.DatagramSocket负责接收和发送UDP数据报,java.util.DatagramPacket表示UDP数据表。每个 DatagramSocket与一个本底地址绑定,每个DatagramSocket可以把UDP数据
阅读全文
posted @ 2019-05-01 19:08
lazyli
阅读(877)
推荐(0)