自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 资源 (4)
  • 收藏
  • 关注

原创 Redis之----缓存穿透、缓存击穿、缓存雪崩

文章目录简介缓存穿透缓存击穿缓存雪崩简介对于Redis缓存来说,使用Redis的缓存,它提升了应用程序的性能和效率,并且缓存在高并发场景中起到了非常重要的作用,如果针对数据的一致性来说,Redis的缓存就是一个非常致命的问题,这种问题有三个。1、缓存穿透2、缓存击穿3、缓存雪崩那么我们分别对这三种情况进行讲解,并且给出解决方案:缓存穿透在默认情况下,用户请求数据时,会先在缓存(Redis)中查找,若没找到即缓存未命中,再在数据库中进行查找,数量少可能问题不大,可是一旦大量的请求数据(例如秒杀

2022-02-15 13:59:01 806 1

原创 Redis之----哨兵模式

文章目录简介哨兵模式作用哨兵模式原理配置哨兵模式测试哨兵模式哨兵模式的优缺点哨兵模式的全部配置简介从原本的主从复制来说,如果主机宕掉了,需要手动设置一台从机为一个新的主机,但是这种手动的配置需要人工干预,耗费时间和人力,并且在人工干预的时间内还会造成服务不可用的情况,对于开发者来说这不是一种好的解决方案。Redis从2.8开始出现了哨兵模式。哨兵模式可以在后台监视主机是否故障,如果发生了故障就会以投票的方式在从机中选出一个作为主机。哨兵模式作用1、通过发送命令,让Redis服务器返回监控其运行状

2022-02-15 11:38:26 1465

原创 Redis之----理解主从复制机制

文章目录简介主从复制的作用为什么使用集群集群环境搭建一主二从使用规则复制原理链路模型简介Redis的主从复制,实际上就是将一台Redis服务器的数据,复制到其他Redis的服务器。前者被称为服务器的主节点(master/leader),后者就是从节点(slave/follower),数据的复制只能由主节点到从节点,Master以写主,slave以读为主。实际上每台服务器都是一个主节点,一个主节点可以有零个或多个从节点,并且每一个从节点只能有一个主节点。主从复制,读写分离,在大部分情况下,很多人浏览网页更

2022-02-15 01:45:23 636

原创 Redis之----如何理解发布订阅

文章目录简介订阅命令订阅示例订阅原理发布订阅的实现场景简介Redis的发布订阅(publish/subscribe)是一种消息通信模式,发送者(publish)发送消息,订阅者(subscribe)接收消,Redis客户端可以订阅任意数量的频道。订阅/发布消息图:下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 client5 和 client1 之间的关系,当有新消息通过 PUBLISH 命令发送给频道 channel1 时, 这个消息就会被发送给订阅

2022-02-14 19:58:57 930

原创 Redis之----持久化RDB和持久化AOF

文章目录简介RDM1.什么是RDM简介由于Redis是基于内存的数据库,如果不将内存中数据库状态保存在磁盘中,那么一旦数据服务器进程退出,服务器中的数据库状态就会消失,所以Redis提供了持久化功能,将数据由内存持久化到文件中。有两种持久化方式:RDBAOF下面就会介绍这两种持久化方式RDM1.什么是RDMRDB,全称Redis DataBase,在指定的时间间隔内将数据集快照写入到磁盘中,在恢复数据的时候将这些快照文件读取到内存中,对应的配置文件中的SNAPSHOTTING。Redi

2022-02-13 23:08:47 1258 1

原创 Redis之----详细分析Redis.conf配置文件

文章目录简介1.units(单位)2.include(包含)3.network(网络)4.general(通用配置)5.snapshotting(快照)6.replication(复制)7.secrulity(安全)8.client(客户端)9.append only mode(aof配置)简介Redis在启动的时候是通过配置文件Redis.conf进行启动的,那么我们了解Redis.conf文件对我们之后对于Redis的操作就非常有帮助,下面我们就来看看这个配置文件都有一些什么东西。首先我们进入这个

2022-02-10 22:48:43 917

原创 SpringBoot之----整合Redis

文章目录简介1.源码分析2.导入依赖3.配置连接4.测试连接简介这篇文章我们简单了解SpringBoot如何整合Redis,介绍关于如何连接上Redis,进行简单测试:首先我们应该注意:从SpringBoot2.x之后,原先使用的Jedis被lettuce替代Jedis:采用直连,模拟多个线程操作会出现安全问题。为避免此问题,需要使用Jedis Pool连接池!类似于BIO模式lettuce:采用netty网络框架,对象可以在多个线程中被共享,完美避免线程安全问题,减少线程数据,类似于NIO模式

2022-02-09 22:18:09 661

原创 Redis之----如何使用Jedis

文章目录简介1.导入依赖2.连接数据库3.测试常用API4.测试事务简介使用Java来操作Redis,Jedis是Redis官方推荐使用的Java连接redis的客户端,这篇文章带你简单了解如何使用Jedis。1.导入依赖这里我们导入两个包一个是jedis、还有一个就是阿里巴巴的fastjson。 <dependencies> <!--导入jedis的包--> <dependency> <gro

2022-02-09 18:46:39 1435

原创 关于一名Java程序员如何备考教师资格证----高级中学信息技术学科

简介作为一名非师范生,如何备考教师资格证,最近成为我脑壳比较头疼的事情,刚面试完,发现还是有很多不足的地方,现在给小伙伴们分享最近的备考经验:首先我面试的是高级中学的信息技术老师,怎么说呢,咱们程序员也得为将来着想是吧,哪天卷不动了,那就成为阳光下最美好的职业,呵护祖国的花朵(当然是教师福利好啦,程序员太辛苦了。。。。),废话不多说开始咱们的正题!color=#00ffff...

2022-01-22 16:15:06 2422 3

原创 MyBatisPlus之----快速入门

这是一篇介绍MybatisPlus的博客,将会以代码的形式带你了解MybatisPlus,里面有很多干货,也是我自己调试过的,代码可用,带你快速了解我们的MybatisPlus并且掌握他的使用。

2022-01-21 21:44:55 1161

原创 整合spingBoot + dubbo + zookeeper实现分布式开发应用

环境搭建项目结构图:1.我们首先做好服务端pom.xml <dependencies> <!--导入依赖:Dubbo + zookeeper--> <dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo-spring-boot-starter</artifact

2022-01-20 15:15:49 2729

原创 SpringBoot之----安装和使用Zokeeper及Dubbo

1.Dubbo基本概念服务提供者(Provider):暴露服务的服务提供方,服务提供者在启动时,向注册中心注册自己提供的服务。服务消费者(Consumer):调用远程服务的服务消费方,服务消费者在启动时,向注册中心订阅自己所需的服务,服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。注册中心(Registry):注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者监控中心(Monitor):服务消费者和提

2022-01-20 01:17:25 283

原创 SpringBoot之----集成Redis

简介在SpringBoot2.x之后,原来使用的jedis被替换为了lettucejedis:底层采用直连,多线程操作不安全,如果想要避免不安全,使用jedis pool连接池 更像Bio模式lettuce:底层采用netty,实例可以在多个线程中共享,不存在线程不安全的情况,可以减少线程数量,更像Nio模式1.源码分析找到RedisAutoConfigurationspringboot 所有的配置类都有一个自动配置类 RedisAutoConfiguration自动配置类都会绑定一个 p

2022-01-19 14:37:33 975

原创 SpringBoot之----异步任务、邮件发送、定时任务的实现

1.异步任务:项目结构:Springboot09TestApplication.javapackage com.wlm;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.scheduling.annotation.EnableAsync;@Enabl

2022-01-18 23:12:33 306

原创 SpringBoot之----快速了解Swagger集成

Swagger 简介:Swagger 是一套围绕 Open API 规范构建的开源工具,可以帮助设 计,构建,记录和使用 REST API。Swagger 工具包括的组件:Swagger Editor :基于浏览器编辑器,可以在里面编写 Open API规范。类似 Markdown 具有实时预览描述文件的功能。Swagger UI:将 Open API 规范呈现为交互式 API 文档。用可视化UI 展示描述文件。Swagger Codegen:将 OpenAPI 规范生成为服务器存根和客户端 库。

2022-01-18 12:17:34 738

原创 SpringBoot之----了解Shiro安全框架整合Mybatis和thymeleaf,实现授权登陆认证

这里我做一个流程图帮助大家理解Shiro安全框架整合Mybatis和thymeleaf,实现授权登陆认证的过程,大家先了解,然后看代码,看完代码再看流程图。1.了解完那我们先看项目结构:项目结构:数据库截图:2.我们再看整个项目的代码:pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w

2022-01-16 23:30:47 2937 1

原创 SpringBoot之----整合Shiro环境,实现登陆拦截和用户认证

1.创建springboot项目,创建时选择导入springboot web和thmyeleaf2.编写UserRealm类

2022-01-15 22:08:45 402

原创 SpringBoot之----了解Shiro安全框架

1.Shiro简介我们可以理解为跟SpringSecurity框架差不多的框架只不过更加的完美:Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在 JavaSE 环境,也可以用在 JavaEE 环境。Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与 Web 集成、缓存等。记住一点,Shiro 不会去维护用户、维护权限;这些需要我们自己去设计 / 提供;然后通过相应的接口注入给 Shiro 即可。可以看到:应用代码直接交互的对象是 Subject,也就是说 Shiro 的对

2022-01-11 12:18:44 3514 1

原创 Python之----PCA算法处理图像与SVD算法处理图像

我们来分析一下这两个算法的各自特点:1、PCA(principal component analysis)是一种数据降维的方式,能够有效的将高维数据转换为低维数据,进而降低模型训练所需要的计算资源。##自适应求K值import numpy as npimport cv2 as cv# 数据中心化def Z_centered(dataMat): rows, cols = dataMat.shape meanVal = np.mean(dataMat, axis=0) # 按列

2021-12-06 22:54:47 6313

原创 Python之----KMeans算法处理图像与MiniBatchKMeans(小批量处理算法)处理图像

1、KMeans算法from PIL import Imageimport matplotlib.pyplot as pltimport numpy as npfrom sklearn.cluster import KMeans, MiniBatchKMeansimport datetimeif __name__ == "__main__": A = Image.open("photo.jpg", 'r') #请输入彩色图像文件 rawimage = np.asarray(A)

2021-12-05 13:21:36 3214 1

原创 Java之----如何进行单元测试来测试代码

我们可以看一个例子:1)创建一个工程,叫SuiteUnitTesting,在这个工程中创建4个类,如下图所示:代码清单如下:public abstract class Shape{ public abstract double perimeter();//计算周长,抽象方法 public abstract double area();//计算面积,抽象方法}public class Rectangle extends Shape{ int a;//边长 int

2021-12-04 23:40:41 2045

原创 关于Python绘制柱状图等图形,以及数据拆分与合并详细讲解

本文主要讲解这四个大方面问题:一、使用plot()方法绘制柱状图等其它图形二、查看DataFrame的内存占用情况三、concat()函数与append()方法四、merge()方法与join()方法项目的结构为:代码字体以及Excel到这里面取:https://download.youkuaiyun.com/download/aaa123_456aaa/547071651、使用plot()方法绘制柱状图和折线图:DataFrame结构的plot()方法可以绘制折线图、柱状图、饼状图等各种形状的图

2021-12-03 12:19:21 5437

原创 如何利用MATLAB进行简单图像二维变换

1、在Matlab中,构造一简单二维图形的顶点表齐次矩阵,使用齐次矩阵变换方法对分别该图形做以下二维变换:宽度缩小为1/2,高度放大为2倍,设为T1顺时针旋转45度,设为T2沿x轴做错切,错切系数b为1/2,设为T3>> A=[2 3 1; 3.75 3 1; 3.75 3.5 1; 4.75 3.5 1; 4.75 4 1 5.25 4 1 5.25 6 1; 6.25 5.5 1; 5.5 5.5 1; 5.5 4 1; 6 4 1;

2021-12-02 11:20:59 3726

原创 如何利用MATLAB进行简单图像渐变处理

1、使用两个图片,一个是猫的图片(cat.bmp),一个是老虎的图片(tiger.bmp),我们要做一个视频。让猫渐变到老虎。>> cat=imread('cat.bmp');>> tiger=imread('tiger.bmp');>> m=avifile('b.avi');>> m.quality=100;>> m=addframe(m,cat);>>ct=cat;>>R1=cat(:,:,1);>

2021-12-01 23:10:18 5158

原创 SpringBoot之----SpringSecurity注销、权限控制、记住我、以及首页定制

1、首先我们来看注销功能:源码地址,免费:https://download.youkuaiyun.com/download/aaa123_456aaa/52716529我们只需要加入:然后在页面中编写相对应的请求即可:在运行界面,点击标签既可以注销:其他的我们完全可以看他的源码,点击到logout里面去看,模仿着来就行了嘛:例如我们不想返回登录页,那我们就按照他的来,返回首页:2、我们再来看权限控制:首先导入包: <dependency>

2021-11-30 16:25:17 2958

原创 SpringBoot之----如何整合SpringSecurity框架之认证和授权

1、讲之前,希望先记住这几个类:WebSecurityConfigurerAdapter:自定义Security策略AuthenticationManagerBuilder:自定义认证策略@EnableWebSecurity:开启WebSecurity模式接下来就是老规矩,引入依赖:pom.xml <dependencies> <dependency> <groupId>org.springframework.bo

2021-11-30 11:19:42 607 1

原创 SpringBoot之----如何整合Mybatis框架

1、老规矩,导入依赖先:pom.xml <dependencies> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.1</ve

2021-11-29 00:33:22 730

原创 SpringBoot之----如何整合Druid数据源

1、老规矩,先引入依赖:pom.xml <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.6</version> </dependency> <dependenc

2021-11-28 19:18:20 668 1

原创 SpringBoot之----如何连接数据库

1、这里只是单纯的演示比较原始的数据库连接,暂时我们先不看如何加入mybatis和其它配置。首先pom.xml引入依赖:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven

2021-11-28 12:26:56 3628

原创 Java之----Random简单验证码的实现

如何实现验证码要求:生成一个5位数的验证码验证码由 4个 (A-Z a-z) 和1个 (0-9)的字符组成数字固定在最后一位即可- 例如:gAgZ6步骤:1,创建了一个长度为52的数组。​ 因为大写字符 + 小写字符一共有52个,所以数组长度为52.2,把大写的A字符到大写的Z字符,存入到数组当中。3,把小写的a字符到小写的z字符,存入到数组当中。4,从数组中获取一个随机的元素。先获取一个随机的索引根据随机索引获取元素5,把第4步重复4次即可。6,获取一个0-9之间的数字。

2021-11-27 20:59:06 734

原创 SpringBoot之----如何在Dao层模拟数据库中的数据

1、我列两个例子给大家看,假如是代表部门Dao层:DepartmentDao.javapackage com.wlm.dao;import com.wlm.pojo.Department;import org.springframework.stereotype.Repository;import java.util.Collection;import java.util.HashMap;import java.util.Map;//部门Dao@Repositorypublic c

2021-11-26 20:01:51 888

原创 SpringBoot之----源码探究如何装配扩展SpringMVC

1、我们可以去官方文档看看怎么使用:https://docs.spring.io/spring-boot/docs/2.1.6.RELEASE/reference/html/boot-features-developing-web-applications.html2、我们按照他的步骤一步步走,看看是什么原理:创建一个config文件夹,然后在下面写一个类MyMvcConfig.java3、通过ALT+INS我们去看它可以重写什么方法:4、继续看文档:5、去代码中CTRL+SHITF+

2021-11-25 18:06:17 452

原创 SpringBoot之----thymeleaf模板引擎

1、模板引擎就是,就是把后台数据和前端数据结合在一起,交给模板渲染之后,输出整个的HTML页面。看下图:2、

2021-11-25 12:20:59 624

原创 SpringBoot之----源码分析静态资源导入原理

1、我们ctrl+shift+a点击进入,我们看看他的源码先:2、我们可以看到,我们通过他说的方式找到文件3、引入jQuery:4、方式一:我们先来看如何访问到jquery.js文件的:5、我们再在看第二种方式:点进去6、指向this、再点击7、我们可以看见“ /** ”说明目录下的所有都识别:8、再来看开始的WebMvcAutoConfiguration.java9、点进去,再点击WebProperties:10、我们就可以看到,资源导入的方式了,说明这五个位置他都支持

2021-11-24 20:32:22 480

原创 SpringBoot之----自动配置原理

1、大概就是配置文件对应着自动装配文件,配置文件中的值会传到spring boot中已经写好的默认装配中,然后spring boot帮我们去装配:application.yaml2、随便点一个进去看看,我们就能找到这一行:3、仔细观察,这像不像我们的自动配置文件里面的,一样的!!!4、总结一句话总结 :根据当前不同的条件判断,决定这个配置类是否生效!一但这个配置类生效;这个配置类就会给容器中添加各种组件;这些组件的属性是从对应的properties类中获取的,这些类里面的每一个属性又是

2021-11-24 16:13:56 552

原创 SpringBoot之----多环境切换

1、环境的优先级:优先级1:项目路径下的config文件夹配置文件优先级2:项目路径下配置文件优先级3:资源路径下的config文件夹配置文件优先级4:资源路径下配置文件有什么用呢?一、springboot 启动会扫描application.properties或者application.yml文件作为Spring boot的默认配置文件:二、扫描的优先级由高到底,高优先级的配置会覆盖低优先级的配置;三、SpringBoot会从这四个位置全部加载主配置文件;互补配置;2、propert

2021-11-24 14:16:22 286

原创 SpringBoot之----JSR303校验

1、Springboot中可以用@validated来校验数据,如果数据异常则会统一抛出异常,方便异常中心统一处理。我们这里来写个注解让我们的name只能支持Email格式,使用数据校验,可以保证数据的正确性;首先我们导入一个依赖:新的springBoot版本得导入spring-boot-starter-validation依赖 <dependency> <groupId>org.springframework.boot</groupI

2021-11-24 12:02:00 290

原创 SpringBoot之----yaml语法详解

1、SpringBoot使用一个全局的配置文件 , 配置文件名称是固定的application.properties语法结构 :key=valueapplication.yml语法结构 :key:空格 value

2021-11-23 16:18:08 1084

原创 Python之----Huffman 哈夫曼编码的实现

1、哈夫曼树, 即带权路径最小的树, 权值最小的结点远离根结点, 权值越大的结点越靠近根结点:2、简单介绍完原理,我们来看这个实现:# 哈夫曼编码字典(键为字母,值为编码)codeDic = {}# 树节点类构建class TreeNode(object): def __init__(self, data): self.val = data[0] self.priority = data[1] self.leftChild = None

2021-11-22 19:18:36 2758

原创 springboot(application.properties文件)设置server.port不生效,还是8080?

1、首先考虑你的pom.xml的依赖有没有放好:该配置项要想生效其实是依赖于项目中内嵌的tomcat容器: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>2、如果

2021-11-21 11:08:10 11105 9

dubbo-admin-0.0.1-SNAPSHOT.jar

这是已经打包好的dubbo-admin-0.0.1-SNAPSHOT.jar,拿来既可以用了

2022-01-20

关于Python绘制柱状图等图形,以及数据拆分与合并详细讲解.zip

一、使用plot()方法绘制柱状图 二、查看DataFrame的内存占用情况 三、concat()函数与append()方法 四、merge()方法与join()方法 以及里面含有如何区分loc与iloc等细节问题:

2021-12-03

springboot-06-security.zip

SpringBoot之----SpringSecurity注销、权限控制、记住我、以及首页定制源码

2021-11-30

springboot-06-security.zip

springboot之SpringSecurity-这里可以取到SpringBoot之----如何整合SpringSecurity框架之认证和授权源码,教程在我的文章里面。

2021-11-30

空空如也

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

TA关注的人

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