- 博客(71)
- 资源 (3)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 springcloud快速入门
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007SpringCloud 教程文章列表1、SpringCloud简介2、服务的注册于发现3、创建一个服务提供者 Eureka Client4、创建一个服务消费者 ribbon+restTemplate5、手动创建负载均衡器6、通过注解方式实现负载均衡7、创建服务消费通过Fegin调用8、rib
2020-07-15 09:42:12
146
原创 webflux+springsecrity+thymeleaf自定义登录页
个人博客纯净版webflux+springsecrity+thymeleaf自定义登录页 | 代码搬运工最近在做网关相关的东西,Spring Cloud Gateway是用的WebFlux框架,和WebMvc框架有很大的区别,具体有什么区别大家可以自行百度。 网关侧有一些需要验证的路径,自己又不想写登录接口、验证等等,所以就整合了springsecrity 做简单的验证。springsecrity 本身自带登录页面,但是不太符合系统的风格,于是就想把默认的登录页面替换调。本来以为就是替换个页面的事情
2022-03-31 10:45:39
1369
原创 利用Mybatis拦截器实现数据权限
个人博客纯净版利用Mybatis拦截器实现数据权限在我们日常开发过程中,通常会涉及到数据权限问题,下面以我们常见的一种场景举例:一个公司有很多部门,每个人所处的部门和角色也不同,所以数据权限也可能不同,比如超级管理员可以查看某张表的素有信息,部门领导可以查看该部门下的相关信息,部门普通人员只可以查看个人相关信息,而且由于角色的不同,各个角色所能查看到的数据库字段也可能不相同,那么此处就涉及到了数据权限相关的问题。那么我们该如何处理数据权限相关的问题呢?我们提供一种通过Mybat.
2022-03-10 14:21:08
3375
1
原创 SpringBoot Redis多数据源配置
个人博客纯净版SpringBoot Redis多数据源配置 | 代码搬运工此处提供了一个SpringBoot starter插件gitee地址spring-boot-starter-dynamic-redis: SpringBoot Redis 多数据源插件客户端集成1.在pom.xml中添加如下依赖:<dependency> <groupId>com.mk</groupId> <artifactId>sprin.
2022-01-21 15:00:56
1455
1
原创 MybatisPlus配置双数据库驱动
个人博客纯净版MybatisPlus配置双数据库驱动 | 代码搬运工最近项目中需要用到2种数据库驱动连接数据库,下面我们基于MybatisPlus实现一下具体实现1、在pom.xml中添加如下依赖:<properties> <java.version>1.8</java.version> <lombok.version>1.18.2</lombok.version> <mybatis-plus
2022-01-21 11:00:21
2539
1
原创 Sentinel规则持久化到nacos配置中心
个人博客纯净版Sentinel规则持久化到nacos配置中心 | 代码搬运工问题描述Sentinel Dashboard中添加的规则是存储在内存中的,只要项目一重启规则就丢失了此处将规则持久化到nacos中,在nacos中添加规则,然后同步到dashboard中;具体实现1、在pom.xml中添加如下依赖:<parent> <groupId>org.springframework.boot</groupId> <
2022-01-21 10:58:30
937
原创 Sentinel自定义规则异常返回
个人博客纯净版Sentinel自定义规则异常返回 | 代码搬运工默认情况下,发生限流、降级、授权拦截时,都会抛出异常到调用方。如果要自定义异常时的返回结果,需要实现BlockExceptionHandler接口:public class SentinelExceptionHandler implements BlockExceptionHandler { /** * 处理请求被限流、降级、授权拦截时抛出的异常:BlockException */
2022-01-21 10:56:49
1850
原创 Sentinel简单入门
个人博客纯净版Sentinel简单入门 | 代码搬运工1、下载使用下载sentinel地址:https://github.com/alibaba/Sentinel/releases下载 sentinel-dashboard-x.x.x.jar下载到本地以后,通过一下命令java -jar sentinel-dashboard-x.x.x.jar进行启动启动完成以后在浏览器访问localhost:8080进入登录页,默认用户名和密码都为sentinel2、客户端集成Senti.
2022-01-21 10:55:21
603
原创 数据库敏感字段加解密
个人博客纯净版数据库敏感字段加解密 | 代码搬运工为了保护数据库敏感字段数据安全,有时候我们需要将敏感数据加密入库,查询时再解密成明文。我们可以利用Mybatis自定义TypeHandler来处理,下面我们来具体实现一下。定义KeyCenterUtils加解密工具类import org.springframework.stereotype.Service;import java.util.Base64;@Servicepublic class KeyCenterUtils {
2022-01-21 10:08:24
1785
原创 自定义注解实现接口版本管理(Header传递版本号)
个人博客纯净版自定义注解实现接口版本管理(Header传递版本号) | 代码搬运工1.定义版本注解@Target({ElementType.METHOD, ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented@Mappingpublic @interface ApiVersion { String value();}2.自定义HandlerMappingpublic class Cus
2022-01-20 10:21:40
788
7
原创 自定义注解实现Restful接口版本管理
个人博客纯净版自定义注解实现Restful接口版本管理 | 代码搬运工在我们的日常开发中,需求总是变化的。对于某个接口,随着需求的升级,也面临里面逻辑的变化。例如,对于/v1/hello,/v2/hello 两个请求,若存在相应的映射,则对应入座。否则都映射到最新的接口上。则映射到最新的接口上。此时,我们又想保持以前的接口还保留,那么我们此时需要做的事,把对接口的请求都映射到最新的接口上,而原来的接口请求还是映射原来的接口上。我在这里介绍用自定义注解的形式,在@RequestMapping()的
2022-01-20 10:20:22
570
原创 自定义异常消息提醒插件
个人博客纯净版自定义异常消息提醒插件 | 代码搬运工spring-boot-starter-exnotice异常消息通知插件(通过邮件发送异常消息)gitee地址spring-boot-starter-exnotice: 异常通知插件如何集成在pom.xml文件中添加如下依赖:<dependency> <groupId>com.mk</groupId> <artifactId>spring-boot-star.
2022-01-20 10:18:57
158
原创 利用fastjson序列化实现数据脱敏
个人博客纯净版利用fastjson序列化实现数据脱敏 | 代码搬运工首先定义脱敏类型枚举类public enum SensitiveType { /** * 中文名 */ CHINESE_NAME, /** * 手机号 */ MOBILE_PHONE;}定义脱敏注解@Retention(RetentionPolicy.RUNTIME)@JacksonAnnotationsInsidepublic @i
2022-01-20 10:17:17
2087
原创 利用注解实现接口数据脱敏
个人博客纯净版利用注解实现接口数据脱敏 | 代码搬运工首先定义脱敏类型枚举类public enum SensitiveType { /** * 中文名 */ CHINESE_NAME, /** * 手机号 */ MOBILE_PHONE;}定义脱敏注解@Retention(RetentionPolicy.RUNTIME)@JacksonAnnotationsInside@JsonSerialize(u
2022-01-20 10:15:45
621
2
原创 Spring特殊注入功能(注入Map集合实现策略模式)
Spring提供通过@Resource注解将相同类型的对象注入到Map集合,并将对象的名字作为key,对象作为value封装进入Map,下面我们来具体实现一下:首先我们定义一个抽象类public abstract class TaskAbstractHandler { abstract public boolean handleJob(String message);}定义多个对象分别继承上面的抽象类@Slf4j@Component("taskA")public cla
2022-01-20 10:14:01
4173
原创 SpringCloud Gateway网关收集请求日志
个人博客纯净版SpringCloud Gateway网关收集请求日志 | 代码搬运工网关负责服务的转发,所有通过网关转发的服务。都可以通过网关进行收集相关请求日志,具体实现如下:日志实体类package com.mk.common.beans;import lombok.*;@Data@Builder@NoArgsConstructor@AllArgsConstructorpublic class GatewayLog { /**请求来源**/ pri
2022-01-20 10:12:49
13730
40
原创 Gateway + Nacos 实现动态路由
个人博客纯净版Gateway + Nacos 实现动态路由 | 代码搬运工今天我们通过Gateway + Nacos实现动态路由,整体的思路是将路由配置信息存储到Nacos配置中心,新增或者修改路由信息时动态刷新路由配置,使路由配置实时生效,不需要重启Gateway服务。动态路由配置import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import com.alibaba.nacos.api.
2022-01-20 10:10:57
6624
1
原创 @Validated注解自定义参数校验
个人博客纯净版@Validated注解自定义参数校验 | 代码搬运工参数校验是我们程序开发中必不可少的过程。用户在前端页面上填写表单时,前端js程序会校验参数的合法性,当数据到了后端,为了防止恶意操作,保持程序的健壮性,后端同样需要对数据进行校验。后端参数校验最简单的做法是直接在业务方法里面进行判断,当判断成功之后再继续往下执行。但这样带给我们的是代码的耦合,冗余。当我们多个地方需要校验时,我们就需要在每一个地方调用校验程序,导致代码很冗余,且不美观。那么如何优雅的对参数进行校验呢?JSR3
2022-01-20 10:09:22
902
原创 Spring高级之注解@PropertySource详解
个人博客纯净版Spring高级之注解@PropertySource详解 | 代码搬运工@PropertySource注解用于指定资源文件读取的位置,它不仅能读取properties文件,也能读取xml文件,并且通过YAML解析器,配合自定义PropertySourceFactory实现解析yaml文件读取properties文件在resources资源目录下存在datasource-config.properties,要加载此文件中的配置,需要用到@PropertySource注解,具体如下
2022-01-20 10:06:40
1756
原创 单点登录EASY-SSO 使用说明
个人博客纯净版EASY-SSO 使用说明 | 代码搬运工EASY-SSO gitee地址EASY-SSO: 单点登录(支持web和app客户端、支持springboot客户端和非springboot客户端)EASY-SSOEASY-SSO是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。 拥有”轻量级、分布式、跨域、Cookie+Token均支持、Web+APP均支持”等特性。 支持SpringBoot服务和非SpringBoot服务集成包含模块easy-.
2022-01-19 17:48:14
1447
原创 Redisson自定义对象编码类(数据序列化)
个人博客纯净版Redisson自定义对象编码类(数据序列化) | 代码搬运工Redisson的对象编码类是用于将对象进行序列化和反序列化,以实现对该对象在Redis里的读取和存储。Redisson提供了以下几种的对象编码应用,以供大家选择:编码类名称 说明 org.redisson.codec.JsonJacksonCodec Jackson JSON 编码 默认编码 org.redisson.codec.AvroJacksonCodec Avro 一个二进制的JSON
2022-01-19 17:46:56
5423
原创 SpringBoot整合Redisson
个人博客纯净版SpringBoot整合Redisson | 代码搬运工Redisson简介Redisson是架设在Redis基础上的一个Java驻内存数据网格(In-Memory Data Grid)。充分的利用了Redis键值数据库提供的一系列优势,基于Java实用工具包中常用接口,为使用者提供了一系列具有分布式特性的常用工具类。使得原本作为协调单机多线程并发程序的工具包获得了协调分布式多机多线程并发系统的能力,大大降低了设计和研发大规模分布式系统的难度。同时结合各富特色的分布式服务,更进一步
2022-01-19 17:45:47
3821
原创 logstash的drop过滤器插件
个人博客纯净版logstash的drop过滤器插件 | 代码搬运工logstash在filter段对日志进行解析的时候, 可以直接筛选出我们想要的日志内容, 如果日志内容里不包括某些字段或者不匹配某种规则, 我们可以把整条日志直接扔掉, 如下配置:input { tcp { mode => "server" host => "0.0.0.0" port => 9600 codec => json_lines }}filter
2022-01-19 17:44:31
1640
原创 Logstash json filter插件
通常情况,Logstash收集到的数据都会转成json格式,但是默认logstash只是对收集到的格式化数据转成json,如果收到的数据仅仅是一个字符串是不会转换成Json.例如:{ "message":{\"age\":22,"\id\":1,\"username\":\"张三\"} }message字段的内容是一个json字符串,不是格式化的Json格式,如果数据导入到Elasticsearch,message字段也是一个字符串,不是一个Json对象;json filter插件可
2022-01-19 17:43:23
2187
原创 Springboot整合ElasticSearch采用RestHighClient的方式
个人博客纯净版Springboot整合ElasticSearch采用RestHighClient的方式 | 代码搬运工添加依赖首先需要创建SpringBoot项目,并在项目的pom.xml文件中添加如下依赖:<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding&
2022-01-19 17:41:15
1943
原创 SpringBoot使用ELK日志收集
个人博客纯净版SpringBoot使用ELK日志收集 | 代码搬运工Logstash配置1、首先在 Logstach_HOME 目录中创建一个配置文件,名为 logstash.conf(名字任意)在logstash.conf配置文件中添加如下配置:input { tcp { mode => "server" host => "0.0.0.0" port => 9600 codec => json_lines }}ou
2022-01-19 17:40:00
2697
原创 SpringBoot+Redis+ELK
个人博客纯净版SpringBoot+Redis+ELK | 代码搬运工Logstash配置1、首先在 Logstach_HOME 目录中创建一个配置文件,名为 logstash.conf(名字任意)在logstash.conf配置文件中添加如下配置:input { redis { host => "127.0.0.1" port => 6379 type => "redis-input" data_type => "list"
2022-01-19 17:36:12
270
原创 logstash安装及简单实用
个人博客纯净版logstash安装及简单实用 | 代码搬运工Logstash安装1、下载LogstashLogstash. 国内直接从官网https://www.elastic.co下载比较困难,需要一些技术手段。这里提供一个国内的镜像下载地址列表Index of logstash-local,方便网友下载。本人是从本地上传到服务器上的,使用的是5.4.22、解压Logstash进入上传目录解压Logstashtar -zxvf logstash-5.4.2.ta...
2022-01-19 17:34:52
931
1
原创 Spring Cloud Gateway全局过滤器 GlobalFilter
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版http://www.51ufo.cn/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%88%86%E5%B8%83%E5%BC%8F/2020/07/11/SpringCloud%E5%85%A5%E9%97%A821-Spring-Cloud-Gateway
2022-01-19 17:31:46
459
原创 SpringBoot快速入门教程
免费视频教程地址:https://ke.qq.com/course/3025961?taid=10404511032945705&tuin=a3e3fb1【录播】初识SpringBoot(15分钟)【录播】SpringBoot之打包运行(11分钟)【录播】SpringBoot之整合Thymeleaf模板(14分钟)【录播】SpringBoot之整合freemarker模板(21分钟)【录播】SpringBoot之整合SpringDataJpa(48分钟)【录播】Sp...
2020-09-18 15:33:30
107
原创 Spring Cloud Gateway 实现Token校验
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版http://www.51ufo.cn/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%88%86%E5%B8%83%E5%BC%8F/2020/07/16/Spring-Cloud-Gateway-%E5%AE%9E%E7%8E%B0Token%E6%A0%A
2020-07-16 17:53:14
9853
3
原创 Spring Cloud Gateway整合actuator监控
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版http://www.51ufo.cn/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%88%86%E5%B8%83%E5%BC%8F/2020/07/11/SpringCloud%E5%85%A5%E9%97%A824-Spring-Cloud-Gateway
2020-07-15 09:27:59
4451
原创 Spring Cloud Gateway整合Eureka应用
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版http://www.51ufo.cn/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%88%86%E5%B8%83%E5%BC%8F/2020/07/11/SpringCloud%E5%85%A5%E9%97%A823-Spring-Cloud-Gateway
2020-07-15 09:24:11
2907
原创 Spring Cloud Gateway实现IP限流
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版在高并发的系统中,往往需要在系统中做限流,一方面是为了防止大量的请求使服务器过载,导致服务不可用,另一方面是为了防止网络攻击。这节课详细探讨在 Spring Cloud Gateway 中如何实现限流常见的限流算法滑动时间窗口算法 漏桶算法 令牌桶算法从某种意义上
2020-07-15 09:22:27
6627
5
原创 Spring Cloud Gateway全局过滤器 GlobalFilter
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版全局过滤器作用于所有的路由,不需要单独配置,我们可以用它来实现很多统一化处理的业务需求,比如权限认证、IP 限流等等。单独定义只需要实现 GlobalFilter、Ordered 两个接口就可以了,具体代码如下所示。@Componentpublic class My
2020-07-15 09:20:44
1988
原创 自定义Spring Cloud Gateway过滤器工厂
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版http://www.51ufo.cn/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%88%86%E5%B8%83%E5%BC%8F/2020/07/11/SpringCloud%E5%85%A5%E9%97%A820-%E8%87%AA%E5%AE%9A%E
2020-07-14 09:46:09
810
原创 Spring Cloud Gateway过滤器
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版http://www.51ufo.cn/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%88%86%E5%B8%83%E5%BC%8F/2020/07/11/SpringCloud%E5%85%A5%E9%97%A819-Spring-Cloud-Gateway
2020-07-14 09:43:47
665
原创 Spring Cloud Gateway自定义路由断言工厂
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版http://www.51ufo.cn/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%88%86%E5%B8%83%E5%BC%8F/2020/07/11/SpringCloud%E5%85%A5%E9%97%A818-Spring-Cloud-Gateway
2020-07-14 09:37:22
3032
原创 Spring Cloud Gateway断言工厂
SpringCloud视频教程:https://ke.qq.com/course/2805647?tuin=a3e3fb1&from_uin=171851697&from=1000201007个人博客纯净版http://www.51ufo.cn/%E5%BE%AE%E6%9C%8D%E5%8A%A1/%E5%88%86%E5%B8%83%E5%BC%8F/2020/07/11/SpringCloud%E5%85%A5%E9%97%A817-Spring-Cloud-Gateway
2020-07-14 09:35:24
312
spring-custom.rar
2019-09-04
重新定义springcloud实战
2019-04-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人