自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (1)
  • 收藏
  • 关注

原创 Security+jwt 实现无状态认证,前后端分离(附带网页案例及完整源码)

本章主要实现Spring Security自定义用户认证功能,jwt 实现token无状态认证。- 使用JWT来传输数据,实际上传输的是一个字符串,这个字符串就是所谓的json web token字符串。- jwt认证和传统的session和cookie模式相比,由于token认证实现了无状态,不再依赖session和cookie,所以无需要考虑伪造cookie等跨域攻击。............

2022-06-14 21:51:08 2310 2

原创 Security+Captcha验证码登录案例-带网页案例(附完整git项目源码)

本章主要实现Spring Security自定义用户认证功能,并使用`thymeleaf`编写一个简单网页供测试使用。- Springboot版本2.5.3- 整合网页模板引擎`thymeleaf`- `hutool`工具包生成验证码

2022-06-13 22:14:07 713

原创 Security自定义账号密码验证+thymeleaf登录案例(附带网页案例及源码下载)

本章主要实现Spring Security自定义用户认证功能,并使用`thymeleaf`编写一个简单网页供测试使用。- Springboot版本2.5.3- 整合网页模板引擎`thymeleaf`

2022-06-12 11:39:22 1162

原创 Springboot实战:Security入门体验(附git源码)

Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。- 本系列文章以实战讲解为主,帮助开发者快速入门并应用到实际开发中。

2022-06-12 10:40:22 430

原创 JS ES6数组操作大全【forEach、map、filter、some、every、reduce、findIndex、find、slice、splice、push、unshift】

整理了一下ES6中数组常见的操作方法,包含:forEach、map、filter、some、every、reduce、findIndex、find、slice、splice、push、unshift。

2022-06-11 22:47:47 6221

原创 JS ES6对象或数组深拷贝详细教程

拷贝就是把父对像的属性,全部拷贝给子对象,改变引用地址。`本案例包含:`- 对象实现深拷贝- 数组实现深拷贝

2022-06-10 23:49:20 4233

原创 Vue3实战:Vue-cli 快速创建vue3项目

- `Vue CLI` 是一个基于 Vue.js 进行快速开发的完整系统。- `CLI (@vue/cli)` 是一个全局安装的 npm 包,提供了终端里的 vue 命令。它可以通过 vue create 快速搭建一个新项目,或者直接通过 vue serve 构建新想法的原型。你也可以通过 vue ui 通过一套图形化界面管理你的所有项目。我们会在接下来的指南中逐章节深入介绍。...

2022-06-08 22:23:35 1238

原创 Executors快速创建线程池以及管理线程池

- `newFixedThreadPool(int nThreads)` 数量固定的线程池- `newSingleThreadExecutor()` 单个线程的线程池- `newCachedThreadPool()` 创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。- `newScheduledThreadPool(int corePoolSize)` 周期性任务线程池- `newWorkStealingPool(int parallelism)`

2022-06-06 22:01:36 451

原创 Java各类锁对比及应用案例(乐观锁、悲观锁、公平锁、非公平锁、可重入锁、读写锁、自旋锁)

我们将围绕卖票案例,用各种锁去解决卖票重复和溢出等情况:(乐观锁、悲观锁、公平锁、非公平锁、可重入锁、读写锁、自旋锁)synchronized,CAS,ReentrantLock、Lock

2022-06-04 18:24:03 512

原创 Springboot整合RabbitMQ,生产者和消息者详细教程(附git源码+延迟、通配符、topic、临时、死信队列案例)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介1. 环境2. 消息提供者6. 源码分享简介什么是RabbitMQRabbitMQ 是实现高级消息队列协议 (AMQP) 的开源消息代理软件(有时称为面向消息的中间件)。RabbitMQ 服务器是用 Erlang 编程语言编写的,并建立在 Open Telecom Platform 框架上,用于集群和故障转移。与代理交互的客户端库可用于所有主要编程语言。安装docker安装RabbitMQ及

2022-06-03 23:53:50 930

原创 Java 开启多线程详细教程 (常见的4种方法)

常见的4种使用线程的方法:- 1实现 Runnable 接口;- 2实现 Callable 接口;- 3继承 Thread 类。- 4匿名内部类的写法。

2022-06-01 22:05:58 6201 2

原创 Docker安装RocketMQ详细教程

Docker安装RocketMQ详细教程文章目录Docker安装RocketMQ详细教程简介1. 需要安装的包2. 安装2.1 `namesrv`注册中心2.2 `rmqbroker`负责存储消息、转发消息2.3 `rocketmq-console` 控制台简介什么是RocketMQRocketMQ是一款分布式、队列模型的消息中间件,是阿里巴巴集团自主研发的专业消息中间件,借鉴参考了JMS规范的MQ实现,更参考了优秀的开源消息中间件KAFKA,实现了业务消峰、分布式事务的优秀框架。版本查询

2022-05-30 21:35:24 2746

原创 Nginx转发Tcp、Udp详细教程(简单粗暴)

简介如何支持TCPnginx支持tcp转发,在1.9.0版本及之后版本中提供,涉及核心模块:ngx_stream_core_modul。nginx若要使用该功能,需要在nginx编译时,带上–with-stream配置参数以启用他。nginx tcp模块 conf 结构:stream { # 目标服务器 upstream { } # 监听路由 server { }}1. 转发案例nginx转发redis案例redis安装在192.168

2022-05-29 21:35:33 4860

原创 Springboot实战:redisson分布式缓存、分布式锁详细教程(附git源码)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介1. 环境2. 客户端配置3. 模拟产品业务实战4. 效果演示5. 分布式锁6. 源码分享简介Redisson在基于NIO的Netty框架上,充分的利用了Redis键值数据库提供的一系列优势,在Java实用工具包中常用接口的基础上,为使用者提供了一系列具有分布式特性的常用工具类。优势:自带分布式锁watch dog自动延期机制,无需手动对锁时间进行续期缓存存储结构丰富支持队列、延时队列

2022-05-28 22:12:03 928

原创 Springboot实战:@Async开启异步多线程详细教程(附git源码)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介1. 环境2. 配置自定义线程池3. 使用4. 效果演示5. 源码分享简介在Spring中,使用@Async标注某方法,可以使该方法变成异步方法,这些方法在被调用的时候,将会在独立的线程中进行执行,调用者不需等待该方法执行完成。在项目应用中,@Async调用线程池,推荐使用自定义线程池的模式@Async默认异步配置使用的是SimpleAsyncTaskExecutor,该线程池默认来一个任务

2022-05-27 22:17:06 1491

原创 Element el-table表格表头拖拽、行拖拽组件封装详细教程【简单粗暴】

文章目录简介安装2. 使用3. 解析及常见问题3.1 行拖拽3.2 表头列拖拽简介el-table+Sortable.js实现表头拖拽、行拖拽Sortable.jsSortable.js是一款优秀的js拖拽库,支持ie9及以上版本ie浏览器和现代浏览器,也可以运行在移动触摸设备中。不依赖jQuery。支持 Meteor、AngularJS、React、Vue、Knockout框架和任何CSS库,如Bootstrap、Element UI。你可以用来拖拽div、table等元素。效果安装.

2022-05-26 20:40:07 4692 1

原创 docker安装RabbitMQ及延时插件安装详细教程

文章目录简介1. 安装运行2. 管理界面简介什么是RabbitMQRabbitMQ 是实现高级消息队列协议 (AMQP) 的开源消息代理软件(有时称为面向消息的中间件)。RabbitMQ 服务器是用 Erlang 编程语言编写的,并建立在 Open Telecom Platform 框架上,用于集群和故障转移。与代理交互的客户端库可用于所有主要编程语言。版本查询docker镜像地址1. 安装运行docker pull rabbitmq:managementdocker run -d .

2022-05-25 21:09:30 624

原创 SpringCloud实战:nacos+Hystrix服务熔断与降级详细教程(附git源码)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介1. 环境2. 提供者3. 消费者4. 效果测试6. 源码分享简介在微服务中断路器在方法执行失败时可以优雅的处理失败,避免跨调用堆栈产生级联失败。断路器起初会处于关闭状态,允许进行方法的调用。如果因为某种原因,方法调用失败了,断路器就会打开,就不会对失败的方法再执行调用了。此时会调用一个后备方法代替失败的方法返回结果。在调用后备方法的过程中断路器偶尔会进入半开状态,去再次尝试调用发生失败的

2022-05-24 19:55:44 1239

原创 Springboot实战:Shiro+jwt前后端分离超详细教程(附git源码下载)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介1. Springboot实战完整教程2. 封装jwt工具3. shiro和JWT整合4. 开启跨域支持5. 登录注册实战6. 效果演示7. 源码分享简介Springboo配置Shiro+jwt进行登录校验,权限认证,附demo演示。什么是JWTjwt 全称JSON Web Tokens,是目前最流行的跨域身份验证解决方案。验证流程这种基于token的认证方式相比传统的ses

2022-05-23 22:53:09 1839

原创 SpringBoot实战:验证码登录Captcha简单粗暴(附git源码)

文章目录简介1. 依赖2. 封装验证码工具类3. 实战6. 源码分享简介本教程利用hutool工具包简单粗暴的实现验证码登录,验证码功能位于cn.hutool.captcha包中,核心接口为ICaptcha,此接口定义了以下方法:createCode 创建验证码,实现类需同时生成随机验证码字符串和验证码图片getCode 获取验证码的文字内容verify 验证验证码是否正确,建议忽略大小写write 将验证码写出到目标流中支持前后端分离支持自定义验证码支持运算验证码.

2022-05-22 20:53:52 1356 4

原创 SpringBoot实战:validator参数校验及捕捉详细教程(附git源码)

文章目录简介1. 依赖2. 普通校验3. 实体校验4. 异常捕获5. 实战效果6. 源码分享简介项目中只要在Java Bean上放一些校验注解,就可以实现校验支持,杜绝通篇 if else 参数判断,而且这个校验是支持group的概念的,对于不同的group生效的校验不一样。这个很有用,因为对于增删改查等不同的操作,需要执行的校验本来就是不一样的。常用注解解析:@AssertFalse 可以为null,如果不为null的话必须为false@AssertTrue 可以为null,如果不.

2022-05-21 21:09:09 416 1

原创 SpringBoot实战:统一响应和异常处理详细教程 (附git源码)

文章目录简介1. 依赖2. 封装响应体3. 全局异常处理4. 效果测试6. 源码分享简介我们通常接触的项目大多已经是前后端分离的项目,前后端的数据交互往往封装成统一的JSON格式。{ "code" : 20000, "message" : "操作成功", "data" : null}统一的异常处理我们使用@RestControllerAdvice结合@ExceptionHandler,并继承ResponseEntityExceptionHandler支持web类的错误处理。.

2022-05-20 22:50:25 493 1

原创 SpringCloud微服务实战:nacos+gateway网关统一拦截、转发、授权详细教程(附git源码)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介1. Springcloud 整合gateway网关2. yml方式配置转发逻辑3. 编写两个服务测试效果4. 统一拦截授权6. 源码分享简介Gateway是在Spring生态系统之上构建的API网关服务,基于Spring 5,Spring Boot 2和Project Reactor等技术。SpringCloud Gateway是Spring Cloud的一个全新项目,基于Spring 5.0+

2022-05-19 22:23:18 7918

原创 Nginx实现负载均衡详细教程

文章目录1. 配置讲解2. 完整配置1. 配置讲解使用时注意把中文注释去掉 # 轮询分配器(使用时注意把中文注释去掉,否则报错) upstream serverGroup { # 服务可配置一个或多个 server 192.168.6.11 weight=10 max_fails=2 fail_timeout=30s; .

2022-05-18 23:32:36 578

原创 Springboot实战:Elasticsearch搜索和分析引擎详细教程(附git源码下载)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介` Springboot实战演示`环境1. 依赖2. elasticsearch客户端配置3. 业务场景模拟4. 效果测试6. 源码分享简介Elasticsearch 是一个分布式的 RESTful 搜索和分析引擎,可用来集中存储您的数据,以便您对形形色色、规模不一的数据进行搜索、索引和分析事实上 Elasticsearch 的完整栈有如下的几个:Beats 是一些轻量级可以允许在客

2022-05-18 22:56:12 509

原创 Springboot实战:AOP日志实现详细教程(附git源码下载)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介1. 依赖2. 定义注解3. 定义切面4. 效果演示6. 源码分享简介AOP面向切面编程是通过预编译方式和运行期动态代理,实现在不修改源代码的情况下给程序动态统一添加功能的一种技术,同时是对OOP(面向对象编程)的补充和完善,常被用来在spring中实现日志记录、性能监控等功能。面向对象实现日志记录,性能监控这些功能时,需要在每个对象中都添加相同的方法,这样就产生了较大的重复工作量和大量的重

2022-05-17 21:54:56 390

原创 SpringCloud微服务实战:Nacos服务注册与配置中心(非常详细附git源码)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介`Nacos 的特性``Nacos 服务注册中心`1. 环境准备2. 创建Springcloud项目3. 服务提供者4. 服务消费者6. 源码分享简介Nacos 提供了一系列简单易用的特性,能够帮助我们快速地实现动态服务发现、服务配置等功能。Nacos 的特性服务发现服务健康监测动态配置服务动态 DNS 服务服务及其元数据管理Nacos 服务注册中心Nacos 作为服务注册中心

2022-05-16 22:05:33 835

原创 Docker安装Kafka及可视化界面详细教程【简单粗暴】

文章目录前言1. 安装zookeeper2. 安装kafka3. 可视化界面安装4. 消息生产和消费演示前言安装要求:docker已安,最好配置阿里等镜像加速,提高镜像下载速度没安装的可参考Ubuntu快速安装Docker及管理界面portainer安装介绍:安装zookpeeper,Kafka的运行依赖ZooKeeperZooKeeper是一个分布式协调服务,它的主要作用是为分布式系统提供一致性服务,提供的功能包括:配置维护、命名服务、分布式同步、组服务等。安装kafkaKafk

2022-05-15 22:00:48 5136 6

原创 Springboot实战:全局异常处理(附git源码下载)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列简介1. 环境配置2. 封装自定义异常3. 定义全局通用返回4. 编写全局异常处理器5. 实战演示6. 源码分享简介为什么要用全局异常处理可以定义返回的统一json结构,前端或者其他服务请求本服务的接口时,该接口需要返回对应的json数据,一般该服务只需要返回请求者需要的参数即可,但是在实际项目中,我们需要封装更多的信息,比如状态码code、相关信息msg等。这里我们只保留状态码code和异常信

2022-05-15 21:27:16 398

原创 Springboot实战:minio文件服务器 (附git源码下载)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列Minio简介1. 环境配置2. 配置MinioClient3. 文件上传下载4. web实战演示6. 源码分享Minio简介高性能MinIO 是全球领先的对象存储先锋,目前在全世界有数百万的用户. 在标准硬件上,读/写速度上高达183 GB / 秒 和 171 GB / 秒。对象存储可以充当主存储层,以处理Spark、Presto、TensorFlow、H2O.ai等各种复杂工作负载以及成为Ha

2022-05-14 21:32:05 697

原创 Springboot实战:发送邮件hutool+thymeleaf支持自定义模板(附git源码下载)

Springboot-cli 开发脚手架系列文章目录Springboot-cli 开发脚手架系列前言1. 开通发送邮件功能2. 环境配置3. 邮件配置4. 邮件服务5. 效果演示6. 源码分享前言本教程分为普通版邮件发送,和自定模板发送。普通发送内容以字符串的形式发送,样式单一。自定义模块发送可自定义Html模板,样式丰富,配合thymeleaf绑定变量,实现更自由的数据绑定。1. 开通发送邮件功能这里以QQ邮箱为例打开qq邮箱,切换至账号菜单拉到下面账号安全,开启IMAP

2022-05-13 21:54:53 2917

原创 Springboot实战:easypoi优雅的Excel、Word文档导出(附源码)

Springboot-cli 开发脚手架系列Netty系列:Springboot使用Netty集成protobuf开发客户端文章目录Springboot-cli 开发脚手架系列前言1. 导入依赖2. 编写模板实体2. 封装导出工具3. 使用模板方式导出4. Work文档导出5. 提供web下载6.效果演示7. 源码分享前言easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员 就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通

2022-05-12 20:18:44 576

原创 Springboot实战:Scheduled优雅的开启定时任务,并配置线程池异步执行(附源码下载)

Springboot-cli 开发脚手架系列Springboot优雅的开启定时任务Scheduled,并配置线程池异步执行(附源码下载)文章目录Springboot-cli 开发脚手架系列简介前言1. 环境2. 开始定时任务3. @Async异步执行定时任务4. 定时任务封装,优雅的执行定时任务5. 最终效果6. 源码分享简介Springboot优雅的开启定时任务Scheduled,并配置线程池异步执行,外加封装管理教学,解决定时任务太多,影响性能难管理问题。前言我们致力于让开发者快速搭建基

2022-05-12 20:15:50 961

原创 Springboot实战:优雅的整合Kafka发送及监听消息示例(附源码下载)

Springboot-cli 开发脚手架系列Springboot优雅的整合Kafka发送及监听消息示例(附源码下载)文章目录Springboot-cli 开发脚手架系列前言1. 环境2. 提供者3. 消费者4. 效果演示6. 源码分享前言致力于让开发者快速搭建基础环境并让应用跑起来,提供使用示例供使用者参考,让初学者快速上手。项目源码github地址项目源码国内gitee地址1. 环境pom.xml <!-- 启动web用于接口测试 -->

2022-05-11 22:51:40 901

原创 Springboot实战:文件上传下载,代码精简(附git源码)

Springboot文件上传下载demo,附源码下载简介1.依赖导入1.1 pom添加hutool工具依赖2. 文件上传下载2.1 FileUtils 工具类封装2.2 编写controller层代码3 效果演示3.1 用postman工具测试上传接口3.2 文件下载效果4 源码下载简介本博客项目源码地址:项目源码github地址项目源码国内gitee地址1.依赖导入1.1 pom添加hutool工具依赖 <dependency> &lt

2022-05-11 22:49:41 896 2

原创 Springboot实战:Mybatis-plus使用示例(含增删改查及分页查询,附源码)

文章目录前言1. 数据库表结构2. 接口介绍3. 具体实现4. 代码生成器4. 完整代码使用本教程代码前,请参考Mybatis-puls官网并正确配置mybatis-plus开发环境前言首先需要根据官网配置代码生成器(本教程结尾有提供),生成代码模板,或自己手动配置本博客项目源码地址:项目源码github地址项目源码国内gitee地址1. 数据库表结构sql文件结尾有提供@Data@EqualsAndHashCode(callSuper = false)@Accessors(

2022-05-10 21:18:27 618

原创 Springboot实战:Mybatis-Plus 代码生成器(附git源码)一键生成XML、实体、service、controller

Mybatis-Plus 代码生成器,一键生成XML、实体、service、controller简介1. 导入依赖2. 编写生成工具3. 代码生成4. 源码地址简介MyBatis-Plus CodeGenerator 代码自动生成器,可以根据使用者的配置,去数据库中根据每一个数据表自动生成对应的 Controller、Service、ServiceImpl、Mapper、Entity 等繁琐且没有技术含量的事情,提高开发效率。本博客项目源码地址:项目源码github地址项目源码国内gitee地

2022-05-10 21:15:45 1945

原创 Springboot+Redis实现分布式缓存详细教程(附源码下载)

@Configuration@EnableCachingpublic class RedisConfig extends CachingConfigurerSupport { /** * RedisTemplate 默认使用 jdk 序列化,存在乱码等问题,将 value 的序列化方式换为 Jackson 后,value 中不再出现乱码。前言致力于让开发者快速搭建基础环境并让应用跑起来,并提供使用示例供使用者参考,快速上手。本博客项目源码地址:项目源码github地址项

2022-05-09 22:00:36 368

原创 Springboot +JWT实现登录认证,密码加密及Token校验全过程(附源码)

JWT实现登录认证简介环境1. 依赖2. token生成及校验3. 登录4. 编写拦截器进行token校验5. 源码下载简介通俗地说,JWT的本质就是一个字符串,它是将用户信息保存到一个Json字符串中,然后进行编码后得到一个JWT token,并且这个JWT token带有签名信息,接收后可以校验是否被篡改,所以可以用于在各方之间安全地将信息作为Json对象传输。JWT的认证流程如下:首先,前端通过Web表单将自己的用户名和密码发送到后端的接口,这个过程一般是一个POST请求。建议的方式是通

2022-05-09 21:56:20 7069

原创 Springboot整合thymeleaf登录案例,及thymeleaf常用语法使用示例(附源码下载)

Springboot-cli 开发脚手架系列Springboot整合thymeleaf登录案例,及thymeleaf常用语法使用示例(附源码下载)文章目录Springboot-cli 开发脚手架系列简介前言1. 环境2. 页面编写3. 编写实体及业务4. 编写接口5. 效果演示6. 源码分享简介Thymeleaf 是新一代 Java 模板引擎与 Velocity、FreeMarker 等传统 Java 模板引擎不同,Thymeleaf 支持 HTML 原型,其文件后缀为“.html”,因

2022-05-08 10:54:41 861

Springboot、SpringCloud全家桶教程+源码开发脚手架

Springboot、SpringCloud全家桶教程+源码,各种常用框架使用案例都有哦,具备完善的文档,致力于让开发者快速搭建基础环境并让应用跑起来,并提供丰富的使用示例供使用者参考,快来看看吧。

2022-05-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除