【计网】第三章 数据链路层(3)信道划分介质访问控制

news2024/11/29 8:43:06

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 3.5-1 信道划分介质访问控制(播报信道中应用)
    • 一、传输数据使用的两种链路
    • 二、介质访问控制
  • 三、信道划分 介质访问控制(静态划分信道)
    • (1)频分多路复用FDM(Frequency Division Multiplexing)
    • (2)时分多路复用TDM(Time Division Multiplexing)
    • (3)改进的时分复用——统计时分复用STDM(Statistical )
    • (4)波分多路复用WDM
    • 5)码分多路复用CDM(没看懂 先不管)
  • 3.5-2 ALOHA协议
    • 一、动态分配信道
    • 二、ALOHA协议
      • (1)(纯)ALOHA协议
      • (2)时隙ALOHA协议
    • 三、总结
  • 3.5-3 CSMA 协议
    • 一、CSMA协议
      • (1)1-坚持CSMA
      • (2)非坚持CSMA
      • (3)p-坚持CSMA(最好的)
    • 二、三种CSMA对比
  • 3.4-5 CSMA/CD 协议(很重要)
    • 一、CSMA/CD 协议
  • 二、传播时延对载波监听的影响
    • 三、如何确定碰撞后的重传时机?
  • 四、最小帧长问题
  • 五、总结
  • 3.5-5 CSMA/CA协议
    • 一、CSMA/CD 协议
    • 二、CSMA/CA 协议工作原理
    • 三、CSMA/CD 与 CSMA/CA 的比较
  • 3.5-6 轮询访问介质访问控制
    • 一、介质访问控制回顾
    • 二、轮询协议
    • 三、令牌传递协议


3.5-1 信道划分介质访问控制(播报信道中应用)

一、传输数据使用的两种链路

点对点链路:两个相邻节点通过一个链路相连,没有第三者。
应用:PPP协议,常用于广域网

广播式链路:所有主机共享通信介质。
应用:早期的总线以太网、无线局域网,常用于局域网。典型拓扑结构:总线型、星型(逻辑总线型)

广播式链路如对讲机之间互相通话,但是如何解决A,B两个对讲机同时通话呢?这就需要用到介质访问控制

二、介质访问控制

介质访问控制的内容就是,采取一定的措施,使得两对结点之间的通信不会发生互相干扰的情况。

静态划分信道:指的是没有开始通信之前先对信道进行划分,
动态分配信道:指的是通信过程中发生冲突时进行处理。frequency、time、wave、code。

在这里插入图片描述 CSMA/CD CSMA、CA 这两个协议非常重要

三、信道划分 介质访问控制(静态划分信道)

信道划分介质访问控制:将使用介质的每个设备与来自同一信道上的其他设备的通信隔离开,把时域和频域资源合理地分配给网络上的设备。

多路复用技术:把多个信号组合在一条物理信道上进行传输,使得多个计算机或终端设备共享信息资源,提高信道利用率。(多个信号在发送的时候拧成一捆,到接收端在分离开来)把一条广播信道,逻辑上分成几条用于两个节点之间通信的互不干扰的子信道,实际就是把广播信道转变为点对点信道
在这里插入图片描述

(1)频分多路复用FDM(Frequency Division Multiplexing)

用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源。

优点:充分利用传输介质带宽,系统效率较高;由于技术比较成熟,实现也比较容易
在这里插入图片描述

(2)时分多路复用TDM(Time Division Multiplexing)

将时间划分为一段段等长的时分复用帧(TDM帧)。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道。
在这里插入图片描述
频分复用类似于操作系统中的“并行”,时分复用类似于“并发”。

但是TDM有一个问题
如果ABCD在4个TDM帧内只有D在发送数据,那么其他时隙就被浪费了。所以采用一个改进方法:STMD

(3)改进的时分复用——统计时分复用STDM(Statistical )

每一个STDM帧中的时隙数小于连接在集中器上的用户数。各用户有了数据就随时发往集中器的输入缓存,然后集中器按顺序依次扫描输入缓存,把缓存中的输入数据放入STDM帧中,一个STDM帧满了就发出。STDM帧不是固定分配时隙,而是按需动态分配时隙。

像是一栋楼里面四个单元的居民下楼去做核酸,核算测试地点不管你是哪个单元的,只要凑够10个人(STDM帧满了)就可以凑成一组了。可以出现连续多个居民全是同一单元的情况。
在这里插入图片描述

(4)波分多路复用WDM

波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来。
在这里插入图片描述

5)码分多路复用CDM(没看懂 先不管)

把两个发送端发送的数据在同一条传输通道上扭到一起,在接收端将这些数据分离。

那么怎么在C端分离A、B的数据呢?

**码分多址(CDMA)**是码分复用的一种方式。1个比特分为多个码片/芯片(chip),每一个站点被指定一个唯一的m位的芯片序列,发送1时发送芯片序列(通常把0写成-1)。

发送1时站点发送芯片序列,发送0时发送芯片序列反码。

在这里插入图片描述在这里插入图片描述

3.5-2 ALOHA协议

一、动态分配信道

介质访问控制是在广播中应用到的一种访问控制,同一时间只能有一个发送方在发送信息。“静态划分信道”是在用户通信之前预先把信道按照时间、空间划分;

“动态分配信道” 又称作“动态媒体接入控制/多点接入”,特点是:信道并非在用户通信时固定分配给用户。

“动态分配信道” 中的“随机访问介质访问控制”中,所有用户可随机发送信息,发送信息时占全部带宽。

二、ALOHA协议

(1)(纯)ALOHA协议

Norm Abramson 在夏威夷旅行时为了解决通信之间的问题,创建了ALOHA协议,ALOHA为夏威夷人当地的打招呼语。

纯ALOHA协议思想:不监听信道,不按时间槽发送,随机重发。想发就发。

“赶得早不如赶得巧”协议,非常得随意,可以看出这个学者是在好好度假了

T0指的是一个数据帧的发送长度用T0衡量, 一个帧从开始发送至发送成功的时间。

各个发送站点在发送数据帧时可能会遇到发生冲突的情况,那么冲突如何检测?

——如果发生冲突,接收方就会检测出差错,然后不予确认或NAK否定确认帧,发送方在一定时间内收不到确认(超时),就判断发生冲突。

冲突如何解决?

——超时后等一随机时间再重传。
在这里插入图片描述

(2)时隙ALOHA协议

时隙ALOHA协议的思想:把时间分成若干个相同的时间片,所有用户在时间开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。控制想发就发的随意性。

不同发送站的时间片划分可能不同,而且冲突之后可能会有优化算法(?)来发送下一帧
冲突的发现是在接收端发现的。发送的时候比如时间片1我发了A,时间片2我发了B,但是A还没发完,那这就冲突。AB再找其他的时间片发送。并不是发送的时候B发现A没发完就不发了。
在这里插入图片描述

三、总结

  1. 纯ALOHA协议比时隙ALOHA协议吞吐量更低,效率更低;

  2. 纯ALOHA协议想发就发,时隙ALOHA协议只有在时间片段开始时才能发;

3.5-3 CSMA 协议

一、CSMA协议

载波监听多路访问协议(carrier sense multiple access)

CS(carrier sense):载波监听/监听,每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据

检测方式:

当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,即发生了冲突。

门限值是一个通用词汇,表示这个数值是临界点,某个参数超过门限值会引起对应的某个性质急剧的变化。
https://baike.baidu.com/item/%E9%97%A8%E9%99%90%E6%95%88%E5%BA%94

MA(multiple access):多点接入,表示许多计算机以多点接入的方式连接在一根总线上。

协议思想:发送帧之前,监听信道。
在这里插入图片描述

(1)1-坚持CSMA

坚持指的是对于监听信道之后的坚持。

1-坚持CSMA思想:如果一个主机要发送消息,那么它先监听信道。

空闲则直接传输,不必等待。

忙则一直监听,直到空闲马上传输。

如果有冲突(一段时间内未受到肯定回复),则等待一个随机长的时间再监听,重复上述过程。(可能会出现多个节点同时监听信道,一发现信道空闲就会同时发送,这就造成了冲突)

优点:只要媒体空闲,站点就马上发送,避免了媒体利用率的损失。

缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免。

(2)非坚持CSMA

非坚持指的是对于监听信道之后就不继续监听。

非坚持CSMA思想: 如果一个主机要发送消息,那么它先监听信道。

空闲则直接传输,不必等待。

忙则等待一个随机的时间之后再进行监听。

优点: 采用随机的重发延迟时间可以减少冲突发生的可能性。

缺点: 可能存在大家都在延迟等待过程中,使得媒体仍可能处于空闲状态,媒体使用率低。

(3)p-坚持CSMA(最好的)

应用于时隙信道。(像时隙ALLOHA一样会将时间分成很多小的时隙(时间片))如果p=1,类似于1-坚持CSMA,而p=0时,与非坚持CSMA不同。

p-坚持指的是对于监听信道空闲的处理。

p-坚持CSMA思想: 如果一个主机要发送消息,那么它先监听信道。

空闲则以p概率直接传输,不必等待;概率1-p等待到下一个时间槽再传输。

忙则持续监听直到信道空闲再以p概率发送。

若冲突则等到下一个时间槽开始再监听并重复上述过程。

优点:既能像非坚持算法那样减少冲突,有能像1-坚持算法那样减少媒体空闲时间。
缺点:发生冲突后发送端还是要坚持把数据帧发送完,造成了浪费。

如何解决这种现象,一发生冲突就能发现,停止发送数据呢?——CSMA/CD协议
在这里插入图片描述

二、三种CSMA对比

1-坚持CSMA非坚持CSMAp-坚持CSMA
信道空闲马上发马上发p概率马上发 1-p概率等到下一时隙再发送
信道忙继续坚持监听放弃监听,等一个随机时间再监听持续监听,直到信道空闲再以p概率发送

3.4-5 CSMA/CD 协议(很重要)

一、CSMA/CD 协议

先听再说,听到有别人在说话自己就不说了

载波监听多点接入(多路访问)/碰撞检测 CSMA/CD (carrier sense multiple access with collision detection)

CS:载波侦听/监听,每一个站点在发送数据之前以及发送数据时都要检测一下总线上是否有其他计算机在发送数据。

MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。总线型网络

CD:碰撞检测(冲突检测),“边发送边监听”,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站点是否也在发送数据。半双工网络(只能有一个发送方,一个接收方,两个人分别从河对岸过独木桥的情况)

Q:先听后发为什么还会冲突?

A:因为电磁波在总线上是以有限速率传播的,可能在A发送给C时的同时,并未传到给B的空隙时间内,B也给C发送数据,这样就造成了冲突。
在这里插入图片描述
如图,A发送信号,但由于有传播时延,在B端暂时检测不到,B就会认为信道空闲,也发送数据,就会造成冲突。

二、传播时延对载波监听的影响

Q:作为发送端,多久才能够知道自己发送的数据?

A:0至2τ
在这里插入图片描述

三、如何确定碰撞后的重传时机?

截断二进制指数规避算法

  1. 确定基本退避(推迟)时间为争用期2τ

  2. 定义参数k,让它等于重传次数,但k不超过 10,即 k = min[重传次数, 10] 。当重传次数不超过10时,k等于重传次数;当重传次数大于 10 时,k 就不再增大而一直等于 10;

  3. 从离散的整数集合 [0, 1,…, 2k−1] 中随机取出一个数 r,重传所需要退避的时间就是 r 倍的基本退避时间,即 2r τ

  4. 当重传达 16 次仍不成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错;
    在这里插入图片描述
    例:在以太网的二进制回退算法中,在 11 次碰撞之后,站点会在0~(?)之间选择一个随机数。

参数 k 为重传次数,虽然已经发生了11次碰撞,但是最大值只能为10,210−1=1023

四、最小帧长问题

假设发送端发送了一个很短的帧,在帧发送完毕后才检测到发生了碰撞,就不会再出现停止发送的情况,因为帧太短已经发送完了。

如何解决这种现象?——规定一个最小帧长

以太网会对小于 64B 的帧进行填充。
在这里插入图片描述

五、总结

在这里插入图片描述

3.5-5 CSMA/CA协议

CSMA/CD 是对于碰撞的检测;

CA 是对于碰撞的避免;

一、CSMA/CD 协议

载波监听多点接入/碰撞避免 CSMA/CA (carrier sense multiple access with collision avoidance)

CA 会发送完信息之后等待一会儿,看看有没有碰撞,如果没有再发送下一条

为什么 CSMA/CD 协议只有碰撞避免、没有碰撞检测还要使用它?

——应用场景不同

CA 使用与无线局域网中,也就是无线网络中;

CD 使用于有网络的情况,总线式以太网中;

CD在无线局域网中的局限有:

(1)无法做到360°全面检测碰撞(无线网空间大,在硬件上难以实现)

(2)隐蔽站问题,当 A 和 C 都检测不到信号,认为信道空闲时,同时向终端 B 发送数据帧,就会导致冲突。

二、CSMA/CA 协议工作原理

(1)发送端发送数据前,先检测信道是否空闲;

信道空闲则发出 RTS(request to send),RTS 包括发送端的地址、接收端的地址、下一份数据将持续发送的时间等信息;

信道忙则等待;

(2)接收端收到 RTS 后,将相应 CTS(clear to send)

(3)发送端收到 CTS 后,开始发送数据帧(同时预约信道:发送方告知其他站点自己要传多久数据);
(4)接收端收到数据帧后,将用 CRC(循环冗余校验)来检验数据是否正确,正确则响应 ACK 帧

(5)发送方收到 ACK 就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间);

CA 中使用了三个手段来实现碰撞避免:

  1. 预约信道(发送端);

  2. ACK确认帧(接收端);

  3. RTS(发送端)/CTS(接收端) (在检测信道的时候两个端发送这两个帧,为了解决隐蔽站的问题);

三、CSMA/CD 与 CSMA/CA 的比较

相同点:

CSMA/CD 与 CSMA/CA 机制都从属于 CSMA 的思路,其核心是先听再说。也就是说,两个在接入信道之前都需要进行监听。当发现信道空闲后,才能进行接入。

不同点:

1. 传输介质不同: CSMA/CD 用于总线式以太网(有线),而 CSMA/CA 用于无线局域网(无线);

2. 载波检测方式不同: 因传输介质不同,CSMA/CD 与 CSMA/CA 的检测方式也不同。

CSMA/CD 通过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电压就会随着发生变化;

CSMA/CA 采用能量检测(ED)、载波检测(CS)和能量载波混合检测三种检测信道空闲的方式;

3. CSMA/CD 检测冲突,CSMA/CA 避免冲突,二者出现冲突后都会进行有上限的重传;

3.5-6 轮询访问介质访问控制

一、介质访问控制回顾

在这里插入图片描述(静态划分信道)信道划分介质访问控制(MAC Multiple Access Control)协议:

基于多路复用技术划分资源;

网络负载重:共享信道效率高,且公平;

网络负载轻:共享信道效率低;

(动态划分信道)随机访问 MAC 协议:

用户根据意愿随机发送信息,发送信息时可独占信道带宽。

网络负载重:产生冲突开销(发生冲突使得发送端的信息失效);

网络负载轻:共享信道效率高,单个结点可利用信道全部带宽;

(动态划分信道)轮询访问 MAC 协议/轮流协议/轮转访问 MAC 协议:

即不产生冲突,发送时占全部带宽。

(1)轮询协议

(2)令牌传递协议

二、轮询协议

主结点轮流“邀请”从属结点发送数据。

主结点按次序给从属结点发送短针,看从属结点是否需要给自己发送数据。

存在问题:

  1. 轮询开销(从属结点多的时候主结点会多次询问);

  2. 等待延迟(对于后面的从属结点主机);

  3. 单点故障(主结点宕机就都坏了);

三、令牌传递协议

**令牌:**一个特殊格式的 MAC 控制帧,不含任何信息。他控制信道的使用,确保同一时刻只有一个结点独占信道。

令牌环网无碰撞,每个结点都可以在一定时间内(令牌持有时间)获得发送数据的权力,并不是无限制地持有令牌。

存在问题:

  1. 令牌开销(令牌传递过程中丢失,或者在源站点传送完数据后,产生一个新令牌);

  2. 等待延迟(接收端排在后面的情况);

  3. 单点故障(任意主机宕机就都坏了,可用替代机);

令牌传递协议应用于令牌环网,逻辑上是环形拓扑结构,物理上是星型拓扑结构。

采用令牌传递方式的网络常用于负载较重、通信量较大的网络中。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/523977.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

协程切换原理与实践 -- 从ucontext api到x86_64汇编

目录 1.协程切换原理理解 2.ucontext实现协程切换 2.1 实现流程 2.2 根据ucontext流程看协程实现 2.3 回答开头提出的问题 3.x86_64汇编实现协程切换 3.1libco x86_64汇编代码分析 3.2.保存程序返回代码地址流程 3.3.恢复程序地址以及上下文 4.实现简单协程框架 1.协程…

《编程思维与实践》1071.猜猜猜

《编程思维与实践》1071.猜猜猜 题目 思路 对于首字符而言,如果后一位字符与之相同,则首位选法只有1种,不同则2种; 对于最后一位字符而言,如果前一位字符与之相同,则末位选法只有1种,不同则2种; 对于中间的字符而言,有以下几种可能: 1.中间字符与前后字符均不同且前后字符不同…

企业挑选人力资源管理系统,需要从哪些角度考察?

企业在挑选人力资源管理系统时,除了要考虑到企业自身的主要需求外,还应该从哪些角度考察人力资源管理系统呢?一起来看看吧~ 一. 数据是否共通 企业在人力资源管理系统时通常有多个功能模块的需求。除了要看系统是否具备这些功能模块&#xff…

一分钟图情论文:《数据与信息之间逻辑关系的探讨——兼及DIKW概念链模式》

一分钟图情论文:《数据与信息之间逻辑关系的探讨——兼及DIKW概念链模式》 1989年,Ackoff R L在论文:《From data to wisdom》中正式提出DIKW概念链模型,在该模型提出后的20年间,在计算机学科、信息管理学科、图书情报…

数据结构--线段树

写在前面: 学习之前需要知道以下内容: 1. 递归 2. 二叉树 文章目录 线段树介绍用途建树修改单点修改区间修改 查询 代码实现。建树更新lazy传递查询 练习洛谷 P3372 【模板】线段树 1题目描述题解 线段树 介绍 线段树是一种二叉树,也可以…

【5G RRC】5G中的服务小区和邻区测量方法

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

STL配接器(容器适配器)—— stack 的介绍使用以及模拟实现。

注意 : 以下所有文档都来源此网站 : http://cplusplus.com/ 一、stack 的介绍和使用 stack 文档的介绍:https://cplusplus.com/reference/stack/stack/ 1. stack是一种容器适配器,专门用在具有后进先出操作的上下文环境中&…

Matlab进阶绘图第20期—带类别标签的三维柱状图

带类别标签的三维柱状图是一种特殊的三维柱状图。 与三维柱状图相比,带类别标签的三维柱状图通过颜色表示每根柱子的所属类别,从而可以更加直观地表示四维/四变量数据。 由于Matlab中未收录带类别标签的三维柱状图的绘制函数,因此需要大家自…

Java 使用 jdbc 连接 mysql

简介 Java JDBC 是 Java Database Connectivity 的缩写,它是一种用于连接和操作数据库的标准 API。Java JDBC 可以让 Java 程序通过 JDBC 驱动程序连接到各种不同类型的数据库,并且执行 SQL 语句来实现数据的读取、插入、更新、删除等操作。在本篇文章中…

Springboot整合Flowable流程引擎

文章目录 前言1. Flowable的主要表结构1.1 通用数据表(通用表)1.2运行时数据表(runtime表)1.3.历史数据表(history表)1.4. 身份数据表(identity表)1.5. 流程定义数据表(r…

C++: 并行加速图像读取和处理的过程

文章目录 1. 目的2. 设计3. 串行实现4. 并行实现5. 比对:耗时和正确性6. 加速比探讨 1. 目的 读取单张图像,计算整图均值,这很好实现,运行耗时很短。 读取4000张相同大小的图像,分别计算均值,这也很好实现…

【OpenCv • c++】形态学技术操作 —— 开运算与闭运算

🚀 个人简介:CSDN「博客新星」TOP 10 , C/C 领域新星创作者💟 作 者:锡兰_CC ❣️📝 专 栏:【OpenCV • c】计算机视觉🌈 若有帮助,还请关注➕点赞➕收藏&#xff…

openGauss5.0.0在vscode成功调试

之前在虚拟机上编译成功过,但今天启动数据库的时候出现权限错误问题,我重新删除了data文件夹,重新初始化启动数据库还是不成功,后来对报错文件进行赋权,成功解决! 问题(一) 1.启动…

图像水印MATLAB实验

文章目录 一、实验目的二、实验内容1. 简单的可见水印嵌入实验2. 不可见脆弱水印实验3. 不可见鲁棒水印实验 一、实验目的 了解数字图像水印技术的基本原理、分类和应用。掌握简单的可见水印和不可见水印的嵌入方法。实现一种基于DCT的不可见鲁棒水印,并进行水印鲁…

Dubbo 服务端源码深入分析 (7)

目录 1. 前提 2. 认识 Protocol 和 ProxyFactory Protocal ProxyFactory Dubbo服务流程 服务端源码分析 测试代码: Protocal代理的源码 ProxyFactory源码: 获取invoker对象 具体步骤 1. 我们调用的是ProxyFactory的代理对象的getInvoker方法…

Linux线程同步(6)——更高并行性的读写锁

互斥锁或自旋锁要么是加锁状态、要么是不加锁状态,而且一次只有一个线程可以对其加锁。读写锁有 3 种状态:读模式下的加锁状态(以下简称读加锁状态)、写模式下的加锁状态(以下简称写加锁状态)和不加锁状态&…

django视图(request请求response返回值)

一、视图函数介绍 视图就是应用中views.py中定义的函数,称为视图函数 def index(request):return HttpResponse("hello world!") 1、视图的第一个参数必须为HttpRequest对象,还可能包含下参数如通过正则表达式组获取的位置参数、通…

VBA——01篇(入门篇——简单基础语法)

VBA——01篇(入门篇——简单基础语法) 1. 语法格式1.1 简单语法1.2 简单例子 2. 变量2.1 常用数据类型2.2 声明变量的常用方式2.3 简单例子 3. 单元格赋值3.1 直接赋值3.2 拷贝单元格 4. 简单的逻辑语法4.1 简单if4.2 简单for循环4.2.1 简单语法例子4.2.…

基于混合整数二阶锥(MISOCP)的配电网重构(附matlab代码)

参考资料:主动配电网网络分析与运行调控 (sciencereading.cn) 配电网重构是指在满足配电网运行基本约束的前提下,通过改变配电网中一个或多个开关的状态对配电网中一个或多个指标进行优化。通过配电网重构,可以在不增加设备投资的情况下&…

注解实现:判空赋值

工作中的小玩意~~ 流程: 注解实现反射工具类 注解定义及实现 注解定义: Documented Target(ElementType.FIELD) Retention(RetentionPolicy.RUNTIME) public interface CheckParam {String value() default "-1"; }简单解释上述其相关注解…