0

SpringBoot2.x拥抱本地缓存之王Caffeine

环境配置:JDK 版本:1.8Caffeine 版本:2.8.0SpringBoot 版本:2.2.2.RELEASE一、本地缓存介绍缓存在日常开发中启动至关重要的作用,由于是存储在内存中,数据的读取速度是非常快的,能大量减少对数据库的访问,减少数据库的压力。之前介绍过 Redis 这种 NoSql 作为缓存组件,它能够很好地作为分布式缓存组件提供多个服务间的缓存,但是 Redis 这种还是需要网络开销,增加时耗。本地缓存是直接从本地内存中读取,没有网络开销,例如秒杀系统或者数据量小的缓存等,比远程缓存更合适。二、缓存组件 Caffeine 介绍按 Caffeine Github 文档描述,C...

阅读全文>>

0

什么是依赖注入

1 定义依赖注入(Dependency Injection),简称DI,类之间的依赖关系由容器来负责。简单来讲a依赖b,但a不创建(或销毁)b,仅使用b,b的创建(或销毁)交给容器。2 例子为了把DI讲清楚,我们需要举一个简单例子。例子足够小,希望让你能直观的了解DI而不会陷入真实示例的泥潭。例子:小明要杀怪,那小明拿什么武器杀怪呢?可以用刀、也可以用拳头、斧子等。首先,我们创建一个演员类,名字叫“小明”,具有杀怪功能。namespace NoInjection.ConsoleApp { public class Actor { private string n...

阅读全文>>

0

基于RBAC的权限访问系统基础

需要,基于RBAC的权限访问,采用SpringSecurity安全管理框架+SpringBoot+Mybatis数据库持久框架。数据库设计:user用户名:ennabled,accountNonExpired,accountNonLocked,CredentialsNonExpired默认为1role角色表:permission权限表:user_role 用户-角色中间表:role_permission色色-权限中间表:permission表中初始数据,权限名为permTag编码实现:1.pom.xml,引入了jdbc,thymeleaf,security,web,mybatis,devtoo...

阅读全文>>

0

接入谷歌Google人机验证:reCaptcha进行安全验证

我们在开发网站的时候,经常需要各种人机验证,那我们就来学习下,网站如何接入谷歌Google人机验证:reCaptcha进行安全验证,本次使用的是 Google人机验证 3.0版本 Google人机验证V3recaptcha v3为每个请求返回一个没有用户摩擦的分数,评分是基于用户与您的站点的交互,并使您能够为您的站点采取适当的行动。大约0.5是阀值,低于这个阀值,就需要进行一些识别和处理。申请密钥1、先要有一个google账户,然后再去reCaptcha官网申请网站为:https://developers.google.com/recaptcha/(需要过翻,你懂的)2、去https://ww...

阅读全文>>

0

Lombok在SpringBoot项目的中使用

SpringBoot结合Lombok整合对象我们之前介绍MyBatis Plus,AOP实现日志接口以及Swagger-UI等文章中都是使用了Lombok,可能有些人不是很了解Lombok,下面我们来介绍一下Java中的Lombok库。Lombok介绍Lombok是一个用于简化Java开发的,他的作用是自动插入编辑器和构建工具。通过注解方式,实现getter、setter、eques以及tostring()等方法。在Lombok中添加Maven依赖    <dependency>      &...

阅读全文>>

0

微信8.0更新:表情可炸群,新增状态栏,浮窗不再「狗皮膏药」

2011 年 1 月 21 日,微信发布了针对 iPhone 用户的 1.0 测试版。2021 年 1 月 21 日,十年后的同一天,微信发布了微信 8.0 for iOS。表情、状态、听歌、浮窗、输入法…… 这是进化后的新功能,一个能让你觉得新奇的微信新版本。懒人目录开屏动画表情状态听歌时的视觉化展示浮窗下拉微信首页红包封面可跳视频号开屏动画微信 7.0 版本大更新上线时,开屏动画曾变成了蓝天下摇曳的格桑花。其文案「因你看见,所以存在」当时还被做了诸多解读。而同样作为大版本的更新,微信 8.0 for iOS 版本的开屏自然也变了,而且地球上孤独的小人也变成了五张图、五句话。我看见你我看见笑...

阅读全文>>

0

会“炸裂”的微信8.0版来了:表情会动,还能和好友同时“搬砖”

1月21日,微信更新了十年来的第八个版本:微信8.0。在张小龙1月19日的演讲中,他预告过微信即将更新不少好玩的功能。在刚刚更新的版本中,动态表情、个人状态等功能的确很有趣。微信官方表示:微信8.0正在灰度测试中。新版本优化了浮窗样式,新增支持历史浏览内容、支持聊天和朋友圈图片文字提取等能力。此外,用户还可以体验会话表情的动画效果,以及微信团队带来的其他有趣好玩的实验项目。界面新闻记者体验后找到了这些让人眼前一亮的更新内容:1. 黄脸表情不仅会动,还会“爆炸”部分热门的微信自带黄脸小表情变为动态,例如哭脸会流泪,“裂开”会真的慢慢裂开……张小龙在演讲中提到的“炸裂屏幕”效果,也真的实现了:向好...

阅读全文>>

0

你们要的SpringBoot+JWT来了

什么是JWTJson Web Token (JWT)是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准(RFC 7519)该token被设计为紧凑且安全的 特别适用于分布式站点的单点登录(SSO)场景随着JWT的出现 使得校验方式更加简单便捷化JWT实际上就是一个字符串 它由三部分组成:头部 载荷和签名用[.]分隔这三个部分 最终的格式类似于:xxxx.xxxx.xxxx该服务器直接根据token取出保存的用户信息 即可对token的可用性进行校验 使得单点登录更为简单JWT校验的过程1、浏览器发送用户名和密码 发起登录请求2、服务端验证身份 根据算法将用户标识符打包生成toke...

阅读全文>>

0

Flink与Spring生态完美融合的脚手架工程

还在为开发Flink流处理应用程序时无法像开发Spring Boot程序那么优雅的分层以及装配Bean而烦恼吗?你可能面临如下苦恼:1. 开发的Flink流处理应用程序,业务逻辑全部写在Flink的操作符中,代码无法复用,无法分层2. 要是有一天它可以像开发Spring Boot程序那样可以优雅的分层,优雅的装配Bean,不需要自己new对象好了3. 可以使用各种Spring生态的框架,一些琐碎的逻辑不再硬编码到代码中。GitHub最近超火的一款开源框架,Flink-Boot脚手架,该脚手架简直是Spring开发工程师的福音,完美融合Spring生态体系,再也不需要手动在Java类中创建臃肿的...

阅读全文>>

0

Ocelot一个优秀的.NET API网关框架

1 什么是Ocelot?Ocelot是一个用.NET Core实现并且开源的API网关,它功能强大,包括了:路由、请求聚合、服务发现、认证、鉴权、限流熔断、并内置了负载均衡器与Service Fabric、Butterfly Tracing集成。2 如何使用Ocelot?首先,创建2个WebApi项目,WebApi01和WebApi02,地址分别https://localhost:44313和https://localhost:44390,其中WebApi01当作网关,WebApi02当作具体的微服务Api。然后,将Ocelot的NuGet软件包安装到WebApi01项目中。Ocelot 注意...

阅读全文>>