张小驰出没
码龄4年
  • 31,326
    被访问
  • 89
    原创
  • 38,146
    排名
  • 817
    粉丝
  • 45
    铁粉
关注
提问 私信

个人简介:何其荣幸,何德何能

  • 加入CSDN时间: 2018-11-19
博客简介:

MoYu's Blog

查看详细资料
  • 4
    领奖
    总分 796 当月 26
个人成就
  • 获得70次点赞
  • 内容获得113次评论
  • 获得210次收藏
创作历程
  • 2篇
    2022年
  • 87篇
    2021年
成就勋章
TA的专栏
  • Spring
    7篇
  • 数据结构
    2篇
  • 算法
    1篇
  • SpringMVC
    7篇
  • SpringBoot
    15篇
  • SSM
    4篇
  • RabbitMQ
    7篇
  • Hexo
    7篇
  • 代理
    2篇
  • Markdown使用教程
  • npm常用命令
    1篇
  • 使用教程
    1篇
  • Git
    1篇
  • Redis
    10篇
  • Vue
    4篇
  • JUC
    1篇
  • Bug
    6篇
  • SpringSecurity
    2篇
  • mybatis-plus
    2篇
  • Linux
    1篇
  • Git上传
    1篇
  • JWT
    1篇
  • 笔记
  • Mybatis
    6篇
  • PicGo图床
    1篇
兴趣领域 设置
  • 开发工具
    ide
  • 后端
    spring后端
  • 软件工程
    个人开发
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

处理 Java 异常的 10 个最佳实践「译文」

原文:https://www.javacodegeeks.com/10-best-practices-to-handle-java-exceptions.html本文是处理 Java 异常的最佳实践。Java 中的异常处理并不是一件容易的事,因为新手很难知道应该去抛出或者处理哪些 Java 异常,资深的开发人员也会花费很长时间去确认哪些异常应该抛出、哪些异常应该处理。如果你是一个新手,那你很可能会对Java 异常处理中出现的各种情况感到迷惑和不...
原创
发布博客 2022.04.11 ·
426 阅读 ·
1 点赞 ·
0 评论

数据结构-链表

链表现虽然顺序表的查询很快,时间复杂度为 O(1) , 但是增删的效率是比较低的,因为每一次增删操作都伴随着大量的数据元素移动。所以可以使用另外一种存储结构实现线性表,链式存储结构。链表是一种物理存储单元上非连续、非顺序的存储结构,其物理结构不能只管的表示数据元素的逻辑顺序,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列的结点(链表中的每一个元素称为结点)组成,结点可以在运行时动态生成。1.单向链表单向链表是链表的一种,它由多个结点组成,每个结点都由一个数据域和一个指针域组
原创
发布博客 2022.01.25 ·
405 阅读 ·
0 点赞 ·
6 评论

秋招记录总结---加油,陌生人

秋招记录总结—加油,陌生人首先,自我介绍:关键词:郑州、双非渣本、男生、22届、Java后端很幸运,可以在秋招期间,获得了 阿里、快手、滴滴 三个offer对比很多大佬来说,我的offer可能不多,或者部门不够核心、不够好,但是个人来说我很满足,仅此而已。而下面,也算是我的小记录吧~~从今年3月份开始找实习,因为自己学校不是太好,了解了以往的校友进入的企业发现,进中厂已经是寥寥无几了,并且发现原来找工作还需要背八股,怀着 好奇+不自信 的心态,一个小菜鸡踉踉跄跄进入了自己的找工作之路。春
原创
发布博客 2021.10.24 ·
179 阅读 ·
4 点赞 ·
1 评论

排序算法解析

排序算法排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:1.冒泡排序**冒泡排序(Bubble Sort)**也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的
原创
发布博客 2021.10.06 ·
103 阅读 ·
0 点赞 ·
0 评论

RabbitMQ 安装与界面管理

RabbitMQ 安装与界面管理RabbitMQ概述官网:https://www.rabbitmq.com/RabbitMQ是部署最广泛的开源消息代理。RabbitMQ拥有成千上万的用户,是最流行的开源消息代理之一。从T-Mobile到Runtastic, RabbitMQ在全球范围内广泛应用于小型初创企业和大型企业。RabbitMQ是轻量级的,易于部署在premises和云中。它支持多种消息传递协议。RabbitMQ可以以分布式和联合的方式部署,以满足高规模、高可用性的需求。RabbitM
原创
发布博客 2021.09.27 ·
45 阅读 ·
0 点赞 ·
0 评论

Rabbit 高级操作

Rabbit 高级操作1.过期时间TTL过期时间TTL表示可以对消息设置预期的时间,在这个时间内都可以被消费者接收获取;过了时间之后消息将自动被删除。RabbitMQ可以对消息和队列设置TTL。目前有两种方法可以设置。第一种方法是通过队列属性设置,队列中所有消息都有相同的过期时间。第二种方法是对消息进行单独设置,每条消息TTL可以不同。如果上述两种方法同时使用,则消息的过期时间以两者之间TTL较小的那个数值为准。消息在队列的生存时间一旦超过设置的TTL值,就称为dead message被投递
原创
发布博客 2021.09.26 ·
46 阅读 ·
0 点赞 ·
0 评论

Spring Boot 整合 RabbitMQ

Spring Boot 整合 RabbitMQ简介在Spring项目中,可以使用Spring-Rabbit去操作RabbitMQ尤其是在spring boot项目中只需要引入对应的amqp启动器依赖即可,方便的使用RabbitTemplate发送消息,使用注解接收消息。一般在开发过程中:生产者工程:application.yml文件配置RabbitMQ相关信息;在生产者工程中编写配置类,用于创建交换机和队列,并进行绑定注入RabbitTemplate对象,通过RabbitTemplate
原创
发布博客 2021.09.26 ·
74 阅读 ·
0 点赞 ·
0 评论

CGLib浅析

CGLib浅析什么是CGLibCGLIB实现动态代理,并不要求被代理类必须实现接口,底层采用asm字节码生成框架生成代理类字节码(该代理类继承了被代理类)。所以被代理类一定不能定义为final class并且对于final 方法不能被代理。实现需要//MethodInterceptor接口的intercept方法/***obj 代理对象*method 委托类方法,被代理对象的方法字节码对象*arg 方法参数*MethodProxy 代理方法MethodProxy对象,每个方法都会对应
原创
发布博客 2021.09.11 ·
483 阅读 ·
2 点赞 ·
6 评论

代理、静态、动态

代理为其他对象提供一种代理以控制这个对象的访问,在某些情况下一个对象不能直接访问那个对象时,代理就起到了客户端和**被代理对象(委托类)**中介作用。按照代理的创建时期,代理类可以分为两种:静态:由程序员创建代理类或特定工具自动生成源代码再对其编译。在程序运行前代理类的.class文件就已经存在了。动态:在程序运行时运用反射机制动态创建而成。静态代理Subject: 代理类和被代理类实现同样的接口Proxy:代理类,里面有被代理类,具体逻辑委托被代理类进行处理RealSubject:被
原创
发布博客 2021.09.05 ·
166 阅读 ·
1 点赞 ·
2 评论

RabbitMQ工作模式

RabbitMQ工作模式1.Work queues 工作队列模式1.1 模式说明work queues 与入门程序的 简单模式 相比,多了一个或一些消费端,多个消费端共同消费同一个队列中的消息。应用场景:对于任务过重或任务较多情况使用工作队列可以提高任务处理的速度。1.2 模式实现生产者public class Producer { static final String QUEUE_NAME = "work_queue"; public static void mai
原创
发布博客 2021.08.15 ·
40 阅读 ·
0 点赞 ·
0 评论

消息中间件RabbitMQ

消息中间件RabbitMQ1.什么是消息中间件MQ全称为Message Queue,消息队列是应用程序和应用程序之间的通信方法。为什么使用MQ?在项目中,可将一些无需即时返回且耗时的操作提取出来,进行异步处理,而这种异步处理的方式大大的节省了服务器的请求响应时间,从而提高了系统的吞吐量2.应用场景2.1 任务异步处理将不需要同步处理的并且耗时长的操作由消息队列通知消息接收方进行异步处理。提高了应用程序的响应时间。2.2 应用程序解耦合MQ相当于一个中介,通过它让生产者与消费者
原创
发布博客 2021.08.15 ·
41 阅读 ·
0 点赞 ·
0 评论

RabbitMQ入门案例

RabbitMQ入门案例Rabbit 模式https://www.rabbitmq.com/getstarted.html实现步骤构建一个 maven工程导入 rabbitmq的依赖启动 rabbitmq-server服务定义生产者定义消费者观察消息的在 rabbitmq-server服务中的进程初步实现前期准备1.构建项目2.导入依赖<dependency> <groupId>com.rabbitmq</groupId>
原创
发布博客 2021.08.13 ·
61 阅读 ·
0 点赞 ·
0 评论

RabbitMQ 安装与界面管理

RabbitMQ 安装与界面管理RabbitMQ概述官网:https://www.rabbitmq.com/RabbitMQ是部署最广泛的开源消息代理。RabbitMQ拥有成千上万的用户,是最流行的开源消息代理之一。从T-Mobile到Runtastic, RabbitMQ在全球范围内广泛应用于小型初创企业和大型企业。RabbitMQ是轻量级的,易于部署在premises和云中。它支持多种消息传递协议。RabbitMQ可以以分布式和联合的方式部署,以满足高规模、高可用性的需求。RabbitM
原创
发布博客 2021.07.18 ·
133 阅读 ·
0 点赞 ·
0 评论

npm常用命令

npm常用命令简介npm是跟随node一起安装的包(模块)管理器。常见的使用场景有以下几种:允许用户从npm服务器下载别人编写的第三方包到本地使用。允许用户从npm服务器下载并安装别人编写的命令行程序到本地使用。允许用户将自己编写的包或命令行程序上传到npm服务器供别人使用。常用命令检测是否安装及版本npm -v # 显示版本号说明已经安装相应的版本生成package.json文件npm initpackage.json用来描述项目中用到的模块和其他信息安装模块npm
原创
发布博客 2021.07.12 ·
380 阅读 ·
1 点赞 ·
0 评论

Markdown使用教程

Markdown使用教程一、Markdown简介Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档。应用当前许多网站都广泛使用 Markdown 来撰写帮助文档或是用于论坛上发表消息。例如:GitHub、简书、知乎等编辑器推荐使用Typora,官网:https://typora.io/二、徽章什么是徽章徽章是一种小巧精美的小图标,一般配有相关文字进行辅助说明,可对数据进行监控,链接跳转等,富有表现力。常见于github项目主页,但其不仅出现于 githu
原创
发布博客 2021.07.12 ·
1788 阅读 ·
0 点赞 ·
0 评论

Git使用教程

Git使用教程安装官网下载:https://git-scm.com/downloads 下载完成后使用默认进行安装。安装完成后,在开始菜单里找到 Git -> Git Bash,蹦出一个类似命令行窗口的东西,就说明Git安装成功!还需要最后一步设置,在命令行输入:git config --global user.name "Your Name"git config --global user.email "email@example.com"因为Git是分布式版本控制系统,所以,每个机
原创
发布博客 2021.07.12 ·
112 阅读 ·
0 点赞 ·
0 评论

yaml语言教程

yaml语言教程简介YAML 是 “YAML Ain’t a Markup Language”(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:“Yet Another Markup Language”(仍是一种标记语言)。YAML 的语法和其他高级语言类似,并且可以简单表达清单、散列表,标量等数据形态。它使用空白符号缩进和大量依赖外观的特色,特别适合用来表达或编辑数据结构、各种配置文件、倾印调试内容、文件大纲(例如:许多电子邮件标题格式和YAML非常接近)。YA
原创
发布博客 2021.07.12 ·
117 阅读 ·
0 点赞 ·
0 评论

Redis缓存穿透和雪崩

Redis缓存穿透和雪崩缓存穿透概念用户如果想查询一个数据,会先在redis内存数据库中进行查询,redis中没有,再向持久层数据库中查询。缓存穿透的概念很简单,用户想要查询一个数据,发现redis内存数据库没有,也就是缓存没有命中,于是向持久层数据库查询。发现也没有,于是本次查询失败。当用户很多的时候,缓存都没有命中,于是都去请求了持久层数据库。这会给持久层数据库造成很大的压力,甚至直接导致崩溃。这时候就相当于出现了缓存穿透。解决方案1.布隆过滤器布隆过滤器是一种数据结构,对所有可能查询的
原创
发布博客 2021.07.08 ·
46 阅读 ·
0 点赞 ·
4 评论

Redis主从复制

Redis主从复制概念主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave以读为主默认情况下,每台Redis服务器都是主节点;’'且一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点主从复制的作用主要包括:数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。故障恢
原创
发布博客 2021.07.06 ·
33 阅读 ·
0 点赞 ·
1 评论

Redis发布订阅

Redis发布订阅什么是发布订阅所谓发布订阅,就是 消息发布者发布消息 及 消息订阅者接收消息 ,二者通过某种媒介关联起来。这类似以前的『订报』,当我们订阅了某种报纸后(比如财经报),每当报纸有新的期刊出版后,就会有邮递员给我们送过来。即,只有定了这种报纸才会收到出版社发布的这种新报纸。发布订阅解析Redis发布订阅(pub/sub)是一种 消息通信模式 :发送者(pub)发送消息,订阅者(sub)接收消息。Redis客户端可以订阅任意数量的频道。订阅/发布消息图:图中可以看出,所需:
原创
发布博客 2021.07.01 ·
37 阅读 ·
1 点赞 ·
2 评论
加载更多