- 博客(24)
- 收藏
- 关注
原创 无线传感网各类路由协议(Flooding、Gossiping、SPIN、DD、Rumor、SAR、LEACH)
但在传输新数据的过程中,没有考虑到邻居节点由于自身能量的限制,只直接向邻近节点广播ADV数据包,不转发任何新数据,如果新数据无法传输,就会出现“数据盲点”,影响整个网络数据包信息的收集。Gossiping闲聊路由协议,它是对泛洪路由协议的改进,节点在收到感应数据后不是采用广播形式而是随机选择一个节点进行转发,这样就避免了消息的内爆,但是随机选取节点会造成路径质量的良荞不齐,增加了数据传输时延,并且无法解决资源盲目利用和消息重叠的问题。该协议引入了代理消息的概念,使用单播随机转发的方式。引入硬门限与软门限。
2023-10-30 22:54:24
3035
原创 SpringBoot配置MinIO(实现文件上传、读取、下载、删除)
例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。由于MinIO是一个单独的服务器,需要单独部署,有关MinIO在Windows系统上的使用请查看以下博客。是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。minio涉及到的方法有:判断存储桶是否存在,创建存储桶,上传文件,读取文件、下载文件,删除文件等操作。来源:blog.csdn.net/Angel_asp/article/*
2023-07-06 17:19:17
978
原创 Spring依赖注入方式
Spring 正如其名字,给开发者带来了春天,Spring 是为解决企业级应用开发的复杂性而设计的一款框架,其设计理念就是:简化开发。即转移创建对象的控制权,将创建对象的控制权从开发者转移到了 Spring 框架。将公共行为(如记录日志,权限校验等)封装到可重用的模块中,而使原本的模块内只需关注自身的个性化行为。本文,将主要介绍 Spring 中 IOC 的依赖注入,
2023-06-18 09:46:14
558
原创 SpringBoot循环依赖的症状和解决方案
循环依赖是指在Spring Boot 应用程序中,两个或多个类之间存在彼此依赖的情况,形成一个循环依赖链。在这种情况下,当一个类在初始化时需要另一个类的实例,而另一个类又需要第一个类的实例时,就会出现循环依赖问题。这会导致应用程序无法正确地初始化和运行,因为Spring Boot 无法处理这种循环依赖关系。
2023-06-15 13:20:42
540
原创 SpringBoot自定义starter
SpringBoot中的starter是一种非常重要的机制,能够抛弃以前繁杂的配置,将其统一集成进starter,应用者只需要在maven中引入starter依赖,SpringBoot就能自动扫描到要加载的信息并启动相应的默认配置。starter让我们摆脱了各种依赖库的处理,需要配置各种信息的困扰。SpringBoot会自动通过classpath路径下的类发现需要的Bean,并注册进IOC容器。SpringBoot提供了针对日常企业应用研发各种场景的spring-boot-starter依赖模块。
2023-06-14 08:56:14
575
原创 CSMA/CD工作原理(通俗易懂)
第四步:冲突检测,如果两个节点或更多的节点都在监听和等待发送,然后在信道空时同时决定立即(几乎同时)开始发送数据,此时就发生碰撞。以太网在传输过程中不断地监听信道,以检测碰撞冲突(边听边说)。第五步:如果一个节点在传输期间检测出碰撞冲突,则立即停止该次传输,并向信道发出一个“拥挤”信号,以确保其他所有节点也发现该冲突,从而摒弃可能一直在接收的受损的信息包(冲突停止,即一次只能一人讲)。第三步:如果信道一直很忙碌,就一直监视信道,直到出现最小的IFG时段时,该节点才开始发送它的数据(有空就说)。
2023-06-13 10:23:35
4112
1
原创 Java+Jsoup+EasyExcel爬取后疫情时代2023年全国百强县GDP数据
以上就是本文的主要内容。本文将以Java语言为编程语言,详细讲解了如何使用Jsoup对Web网页知识进行爬取,结合EasyExcel将网页表格转换成Excel表格,同时文中给出了详细的示例代码。由于行文仓促,难免有误,欢迎批评指正交流。要采集的数据已经采集完毕,数据的顺序也是完全按照网页上的顺序来进行生成的。[外链图片转存中…(img-ApNKEilI-1686618919683)][外链图片转存中…(img-TA0QC4Hk-1686618919683)]以上就是本文的主要内容。
2023-06-13 09:20:52
928
原创 List集合去重优化
map的add , 老生常谈就不谈了,hash完 直接塞到某个位置, 时间复杂度 :O(1)。最近又是一轮代码review , 发现了一些实现去重的代码,在使用 list.contain …评价:list.contain 的效率,我的建议是,知道就行,别用。ps:这里是采取使用 set 的 add 方法做去重。评价:知道就行,图个乐,别用,贼慢,而且代码看起来乱。评价:还不错,主要是代码也蛮简洁,有一点点动心。评价:HashSet 的效率,我的建议是推荐。所以 O(n) 和 O(1) 谁快谁慢?
2023-06-10 20:34:42
291
原创 SpringBoot 高效批量插入万级数据
3、批量插入saveBatch(总耗时:2.7秒)5、ThreadPoolTaskExecutor(总耗时:1.7秒)
2023-05-23 13:27:23
3531
原创 SpringBoot 处理 CORS 跨域请求的三种方法
Springboot跨域问题,是当前主流web开发人员都绕不开的难题。但我们首先要明确以下几点跨域只存在于浏览器端,不存在于安卓/ios/Node.js/python/ java等其它环境跨域请求能发出去,服务端能收到请求并正常返回结果,只是结果被浏览器拦截了。之所以会跨域,是因为受到了同源策略的限制,同源策略要求源相同才能正常进行通信,即协议、域名、端口号都完全一致。
2023-05-20 15:58:07
311
原创 HashMap 的 7 种遍历方式与性能分析!
本文我们讲了 HashMap 4 种遍历方式:迭代器、for、lambda、stream,以及具体的 7 种遍历方法,综合性能和安全性来看,我们应该尽量使用迭代器(Iterator)来遍历 EntrySet 的遍历方式来操作 Map 集合,这样就会既安全又高效了。参考 & 鸣谢。
2023-05-02 13:17:39
1022
原创 MySQL带排序的分页查询优化
带排序的分页查询优化浅分页可以给order by字段添加索引深分页可以给order by 和select字段添加联合索引可以通过手动回表,强制去走索引从业务方着手,去限制他的分页查询或者修改前后端交互(将每页最后一条数据的id和分数传递过来)
2023-04-24 13:36:42
263
原创 SpringBoot 设置动态定时任务
本仓库包含springboot各种demo案例启动项目,可以看到任务每10秒执行一次:访问接口,传入请求参数cron表达式,将定时任务修改为15秒执行一次:可以看到任务变成了15秒执行一次除了上面的借助cron表达式的方法,还有另一种触发器,区别于CronTrigger触发器,该触发器可随意设置循环间隔时间,不像cron表达式只能定义小于等于间隔59秒。增加一个修改时间的接口:测试结果:
2023-04-22 21:45:15
198
原创 application.yml与bootstrap.yml的区别
bootstrap.yml 用来程序引导时执行应用于更加早期配置信息读取。application.yml 可以用来定义应用级别的, 应用程序特有配置信息,可以用来配置后续各个模块中需使用的公共参数等。
2023-04-18 15:49:06
193
原创 Dubbo3.0入门教程与新特性介绍 包括改装为dubbo以及跨语言调用
⾃此,Dubbo的改造就完成了,总结⼀下:1. 添加pom依赖2. 配置dubbo应⽤名、协议、注册中⼼3. 定义服务接⼝和实现类4. 使⽤@DubboService来定义⼀个Dubbo服务5. 使⽤@DubboReference来使⽤⼀个Dubbo服务6. 使⽤@EnableDubbo开启Dubbo注册模型的改变在服务注册领域,市⾯上有两种模型,⼀种是应⽤级注册,⼀种是接⼝级注册,在Spring Cloud中,⼀个应⽤是⼀个微服务,⽽在Dubbo2.7中,⼀个接⼝是⼀个微服务。
2023-04-15 17:41:01
1019
原创 微服务,分布式和集群区别(彻底搞懂)
从概念理解,分布式服务架构强调的是服务化以及服务的分散化,微服务则更强调服务的专业化和精细分工;从实践的角度来看,微服务架构通常是分布式服务架构,反之则未必成立。所以,选择微服务通常意味着需要解决分布式架构的各种难题。微服务和分布式区别 面试回答微服务是系统架构的一个设计方式,它是将复杂的业务拆分成多个微小的服,每个服务可单独运行和部署,服务与服务之前一个可以采用RPC来通信。分布式是一种系统的部署方式,主要是将同一个服务,拆分成可以去部署到多台机器。集群实质是将几台服务器集中在一起,实现同一业务。
2023-04-14 19:50:55
3580
原创 Maven 多模块 快速入门 简单示例
Maven中的dependencyManagement元素提供了一种管理依赖版本号的方式。在dependencyManagement元素中声明所依赖的jar包的版本号等信息,那么所有子项目再次引入此依赖jar包时则无需显式的列出版本号。Maven会沿着父子层级向上寻找拥有dependencyManagement 元素的项目,然后使用它指定的版本号。子模块中 parent标签里的 均设置为父模块的父模块pom.xml子模块m
2023-04-13 19:19:00
233
原创 Mybatis-Plus 分页Page报错,找不到of方法
java: 找不到符号 符号: 方法 of(int,int) 位置: 类 com.baomidou.mybatisplus.extension.plugins.pagination.Page
2023-04-12 10:29:44
1216
1
原创 Spring Cloud Security OAuth2.0分布式认证授权
OAuth(开放授权)是一个开放标准,允许用户授权第三方应用访问他们存储在另外的服务提供者上的信息,而不 需要将用户名和密码提供给第三方应用或分享他们数据的所有内容。OAuth2.0是OAuth协议的延续版本,但不向 后兼容OAuth 1.0即完全废止了OAuth1.0。很多大公司如Google,Yahoo,Microsoft等都提供了OAUTH认证服 务,这些都足以说明OAUTH标准逐渐成为开放资源授权的标准。
2023-04-06 15:19:54
453
1
原创 Springboot Redis在分页查询中,缓存和反序列化问题
json反序列化终究还是要转为一个实现类对象,那于是可以自定义一个分类类,实现IPage接口,根据json中的数据,可以自定义下面这些属性。第一次启动时,将redis里面的缓存清空,进入设备信息的模块时,第一次从数据库中查询数据,并装入Redis中缓存,页面显示数据。
2022-09-02 19:31:50
2102
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人