若依添加手机验证码登录

11 月 12 日
阅读 7 分钟
153
在若依平台上的账号密码登录流程如下:SysLoginController.login()--->loginService.login()--->authenticationManager.authenticate(){ --->daoAuthenticationProvider.authenticate()--->userDetailsService.loadUserByUsername()} ---> 根据用户信息创建token返回

nginx upstream 配置实现负载均衡

4 月 24 日
阅读 2 分钟
864
配置upstream打开nginx.conf添加如下配置upstream模块配置中: {代码...} weight: 设置后端服务器的权重,用于调整负载均衡比例。不需要可以去掉该参数max_fails: 定义了后端服务器的最大失败次数。如果达到这个失败次数,则该服务器被标记为暂时不可用。fail_timeout: 定义了服务器暂时不可用的时间,超过这个时间后,N...

rsync 定时整理备份

4 月 24 日
阅读 2 分钟
399
步骤 1: 安装 rsync如果尚未安装 rsync,Ubuntu可以通过以下命令安装: {代码...} CentOS : {代码...} 步骤 2: 编写备份脚本下面的脚本在本地服务器上执行,将本地服务器的文件备份到远程服务器上 {代码...} 解释一下这个脚本:source_dir: 要备份的源目录,在本地服务器上remote_backup_dir: 你想要存储备份的目录。rsyn...

AI自动生成证件照

4 月 11 日
阅读 8 分钟
665
这个教程由来很好玩,有一次我需要一寸照片电子版,但是手头没有。因此通过小程序,上传了一张照片,就自动生成了证件照,效果还不错。于是我就很好奇这个东西怎么实现的,经过一番探索,终于找到了方案,然后编写代码验证,最终实现的效果还不错。
封面图

人工智能实现自动抠图证件照-老照片修复-模糊图片处理

2 月 24 日
阅读 1 分钟
324
后续相关教程计划:1.自动抠图,换背景,实现制作证件照相关教程,效果图如下![上传中...]()2.人像处理成卡通和素描效果,效果图如下3.老照片修改,效果图如下4.模糊图片处理,效果如下可关注哔哩哔哩:可关注星球:

Rabbitmq如何设置qos

2020-05-09
阅读 4 分钟
7.4k
以下为Google翻译,原文链接:原文链接您在Rabbit中有一个队列。您有一些正在使用该队列的客户端。如果您根本没有设置QoS设置(basic.qos),那么Rabbit将以网络和客户端允许的最快速度将所有队列的消息推送到客户端。使用者将所有消息缓存在自己的RAM中时,将在内存中膨胀。如果您询问Rabbit,队列可能会显示为空,但是...

Springboot 2.x 同时使用Caffeine 和 Redis 及自定义缓存时间

2020-01-10
阅读 5 分钟
9.2k
一.实现本地缓存自定义配置1.@Configuration配置类中,自定义bean实现本地缓存的灵活配置 {代码...} 2.配置本地缓存CacheManager {代码...} 3.配置application.yml {代码...} 4.在代码中制定value {代码...} 其中 @Cacheable注解的value值和配置文件中是对应起来的二、实现Redis缓存过期时间自定义1.添加RedisCacheManag...

Jenkins备份迁移

2019-08-07
阅读 1 分钟
7.8k
通过插件备份的方式,不是很灵活,可选择备份的粒度低(比如就没有办法只备份各项目配置)如果项目多的话,备份出来的文件会很大。只备份关于项目的配置下面以docker部署jenkins为例,jenkins对于的home目录为/data/jenkins-data

SpringBoot 动态代理|反射|注解(四)- 动态代理对象注入到Spring容器

2019-07-11
阅读 6 分钟
13.2k
本篇我们将实现通过代理生成的对象注入到spring容器中。首先需要实现BeanDefinitionRegistryPostProcessor, ApplicationContextAware两个接口,作用分别为:ApplicationContextAware:可以获得ApplicationContext对象,然后获取Spring容器中的对象BeanDefinitionRegistryPostProcessor+ FactoryBean:可以将我们自定义的...

SpringBoot 动态代理|反射|注解|AOP 优化代码(三)-注解

2019-07-11
阅读 4 分钟
5.4k
上一篇SpringBoot 动态代理|反射|注解|AOP 优化代码(二)-反射 我们实现了通过反射完善找到目标类,然后通过动态代理提供默认实现,本篇我们将使用自定义注解来继续优化。 创建注解 1.创建枚举 ClientType,用来标明Handler的实现方式 {代码...} 2.创建注解ApiClient,用来标明Handler的实现方式 {代码...} 3.创建HandlerRo...

SpringBoot 动态代理|反射|注解|AOP 优化代码(二)-反射

2019-07-11
阅读 4 分钟
7.4k
SpringBoot 动态代理|反射|注解|AOP 优化代码(一)-动态代理提供接口默认实现 我们抛出问题,并且提出解决问题的第一步的方法。下面我们继续深入,动态代理和反射继续解决我们的问题。 改动代码结构 新增一个HandlerRougter接口,其目的就是替代上一篇的DeviceHandlerRouter {代码...} 其中T是具体的业务接口。下面实现De...

SpringBoot 动态代理|反射|注解|AOP 优化代码(一)-动态代理提供接口默认实现

2019-07-11
阅读 4 分钟
5.1k
一、背景 在项目中需要调用外部接口,由于需要调用不同环境(生产、测试、开发)的相同接口(例如:向生、测试、开发环境的设备下发同一个APP)。 {代码...} 因此需要根据传入的环境调选择不同的调用方式。 优化前代码结构 下面以添加和删除设备接口为例(一切从简,不代表真正业务代码): {代码...} Feign方式实现: {...

SpringBoot JWT Token 跨域 Preflight response is not successful

2019-04-16
阅读 3 分钟
5.8k
SpringBoot实现token校验,可以通过Filter或者HandlerInterceptor,两种方式都可以,Filter在最外层,请求首先会通过Filter,filter允许请求才会通过Intercept。

docker jenkins gitlab 自动部署NodeJs项目 及 env node not found 解决

2019-03-27
阅读 1 分钟
7.9k
一、Jenkins配置1.安装NodeJS Plugin 在插件管理界面 搜索Node 找到NodeJS,安装、重启,成功后如下图:2.配置NodeJS Server 在全局工具配置中,如下配置:二、项目配置选择"构建一个自由软件风格的项目" ,配置如下:1.配置git项2.Build Environment3.Build配置项其中echo $PATH 、which node、 node -v、npm -v 可选,...

vue 使用 el-upload 上传文件及Feign 服务间传递文件

2019-03-14
阅读 4 分钟
3.7k
一、前端代码 {代码...} 说明: el-upload 的 ref="upload" 给这个组件起个变量名,以便 js逻辑代码可以引用 http-request="createAppVersion" el-upload 上传使使用自定义的方法 :data="appVersion" 上传时提交的表单数据 onSubmitClick 方法中会调用el-upload.submit()方法,进而调用createAppVersion()方法 组成表...

SpringCloud 配置中心

2019-03-08
阅读 3 分钟
6.6k
创建一个git仓库用来存放各项目配置,可以在项目一级目录根据项目创建文件夹(各项目文件夹的名称可以随便起,Config配置中心只根据配置文件名找配置),然后各个项目文件夹存放不同环境的配置文件,例如:Iot-TestProject-dev.ymlIot-TestProject-prd.ymlIot-TestProject-test.yml

SpringBoot ActiveMq JmsTemplate 异步发送、非持久化

2018-12-19
阅读 3 分钟
9k
同步发送:消息生产者使用持久(persistent)传递模式发送消息的时候,Producer.send() 方法会被阻塞,直到 broker 发送一个确认消息给生产者(ProducerAck),这个确认消息暗示broker已经成功接收到消息并把消息保存到二级存储中。

moquette改造笔记(二):优化BrokerInterceptor notifyTopicPublished()逻辑

2018-09-19
阅读 6 分钟
4.2k
可以发现在除了notifyTopicPublished(),其它方法中,在for循环中每次for循环,对于InterceptHandler的调用都是在线程池中每次都是新执行一个任务,但是在notifyTopicPublished()方法中是在一个线程中for循环依次调用,这样处理首先没有用到线程池的多线程,其次是一旦某个InterceptHandler的notifyTopicPublished方法是...

java CRC8

2017-02-21
阅读 1 分钟
5.7k
// /**// * Test// */// public static void main(String[] args) {// CRC8 crc = new CRC8();// crc.reset();// crc.update("test".getBytes());// System.out.println("181=" + crc.getValue());// crc.reset();// crc.update("hello world".getBytes());// System.out.println("59=" + crc.getValue());// }

netty 耗时任务如何处理

2017-01-06
阅读 4 分钟
17.9k
netty 处理耗时的任务逻辑,是不能在IO线程处理,因为这会造成堵塞,将会严重影响性能。那怎么区分IO线程呢? 答案就是EventLoop,EventLoop用来处理IO线程,因此耗时任务的handler不要在EventLoop里面处理。以下面代码为例: