自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 收藏
  • 关注

原创 装饰者模式

装饰者模式:在不必改变原类和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。

2025-01-03 18:00:47 314

原创 Java移位运算符

则得到的最终结果是0000 0000 0000 0000 0000 0000 0000 1100,1)把3转换为二进制数字0000 0000 0000 0000 0000 0000 0000 0011,按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补符号位,即正数补零,负数补1。1)11的二进制形式为:0000 0000 0000 0000 0000 0000 0000 1011。3)最终结果是0000 0000 0000 0000 0000 0000 0000 0010。

2025-01-03 10:50:19 563

原创 Java 内部类

通常用于创建只需要使用一次的类对象,可以简化代码,提高代码的可读性和可维护性。3、成员内部类和静态内部类可以被任意修饰符修饰。方法内部类和匿名内部类,不能被修饰符修饰。使用内部类继承某个具体的或抽象的类。定义在类内部的类,与类的方法,属性属于同一级别的,即也是外部类的成员。1、内部类可以直接访问外部类的属性(静态类只能访问静态属性)所谓内部类就是在一个类的内部嵌套其他类结构。2、内部类可以对该包下的其他类隐藏。3、方法内部类(局部内部类)jdk17 以上才支持。一般内部类划分的类型。

2025-01-02 16:36:31 285

原创 观察者模式

观察者模式:在对象之间定义一对多的依赖,当一个对象改变状态时,依赖他的对象都会收到通知,自动更新。

2024-12-30 15:47:01 228

原创 策略模式

策略模式:该模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。

2024-12-26 15:36:32 535

原创 Liunx 笔记

Ctrl+c 结束正在运行的程序Ctrl+d 结束输入或退出shellCtrl+s 暂停屏幕输出【锁住终端】Ctrl+q 恢复屏幕输出【解锁终端】Ctrl+l 清屏,【是字母L的小写】等同于Clear当前光标到行首:ctrl+a当前光标到行尾:ctrl+e删除当前光标到行首:ctrl+u删除当前光标到行尾:ctrl+kCtrl+y 在光标处粘贴剪切的内容Ctrl+r 查找历史命令【输入关键字,就能调出以前执行过的命令】

2024-12-06 17:51:11 952

原创 Elasticsearch在liunx 中单机部署

配置文件地址:elasticsearch-XXX/config。修改配置文件 limits.conf 增加对应配置。修改完毕后,需要执行命令。修改配置文件添加配置。

2024-12-03 17:29:27 1358

原创 docker 相关命令

可能出现 Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)1、修改docker的daemon.json文件。2、重启docker。

2024-11-20 14:41:11 440

原创 树的几种检索方式

广度优先搜索(Breadth-First Search,BFS):广度优先和深度优先相似,但是我们这次采取的方法是。):先从一条线走到叶子节点,然后回到上一个分支处,从另一条分支走,不断重复直到最后我们。3、判断栈顶元素是否为目标,不是就弹出栈顶元素,压入他的子节点。2、判断队列首元素是否为目标,不是就将首元素出列,将子节点入列。4、不断重复步骤3、直到找到目标节点,或者将栈置空遍历完树。2、判断栈顶元素是否为目标,不是就压入子节点(先右后左)3、不断重复步骤2、直到找到目标节点,或者遍历完树。

2024-10-21 15:47:00 524

原创 mysql 中常用的函数

LAST_DAY(date1):返回当月的最后一天。

2024-10-21 14:57:46 1551

原创 微信小程序登录时发送手机号机密工具类

【代码】微信小程序登录时发送手机号机密工具类。

2024-10-18 16:24:56 122

原创 微信小程序签名验证工具类

【代码】微信小程序签名验证工具类。

2024-10-18 16:20:13 192

原创 RestTemplate 学习笔记

RestTemplate是一个执行HTTP请求的同步阻塞式工具类,它仅仅只是在 HTTP 客户端库(例如 JDK HttpURLConnection,Apache HttpComponents,okHttp 等)基础上,封装了更加简单易用的模板方法 API,方便程序员利用已提供的模板方法发起网络请求和处理,能很大程度上提升我们的开发效率。

2024-10-18 15:49:30 761

原创 sleuth(micrometer)+zipkin 实现链路追踪

Zipkin 是 Twitter 的一个开源项目,它基于Google Dapper实现,它致力于收集服务的定时数据,以解决微服务架构中的延迟问题,包括数据的收集、存储展现、查找和我们可以使用它来收集各个服务器上请求链路的跟踪数据。

2024-09-24 16:01:36 473

原创 Seata学习笔记

AT 模式是 Seata 创新的一种非侵入式的分布式事务解决方案,Seata 在内部做了对数据库操作的代理层,我们使用 Seata AT 模式时,实际上用的是 Seata 自带的数据源代理 DataSourceProxy,Seata 在这层代理中加入了很多逻辑,比如插入回滚 undo_log 日志,检查全局锁等。XA 模式是从 1.2 版本支持的事务模式。XA 规范 是 X/Open 组织定义的分布式事务处理(DTP,Distributed Transaction Processing)标准。

2024-09-23 17:21:45 905

原创 Gateway学习笔记

Gateway网络为微服务架构提供简单且统一的API路由管理,作为系统的统一入口。开头任意取名,但是必须以RoutePredicateFactory后缀结尾继承AbstractRoutePredicateFactory抽象类仿照这个源码写,这个源码的路由规则是根据时间来定义的//支持shortcut 如果不重写 用简便形式写就会报错//ServerWebExchange这个类似与request,这个是判断是否让请求通过的规则//路由规则。

2024-09-14 17:22:23 1424

原创 SpringBoot多数据源配置

DruidDataSourceAutoConfigure会注入一个DataSourceWrapper,其会在原生的spring.datasource下找 url, username, password 等。动态数据源 URL 等配置是在 dynamic 下,因此需要排除,否则会报错。排除方式有两种,一种是上述配置文件排除,还有一种可以在项目启动类排除;推荐使用配置文件配置。上,同时存在方法注解优先于类上注解。3、使用@DS区分数据源。接口方法上,不要同时在。service上使用。

2024-09-12 17:37:24 401

原创 spring boot默认Logback日志

默认行为1. 控制台输出:如果没有配置文件或配置文件中没有指定文件输出位置,则默认情况下 Logback 会将日志输出到控制台(System.out 或 System.err)。2. 文件输出:如果配置了文件输出但没有指定具体的路径,则 Logback 会将日志文件输出到当前工作目录下的 logs 目录中。

2024-09-12 14:49:34 1184

原创 Spring Security 快速开始

PreAuthorize("@el.verify('cece2')") 然后往容器中添加el 实例,然后使用自定义的方法验证权限。,后续我们将token放到请求头中进行请求,后端校验该token,校验成功后再访问相应的接口。集成User可以补充一些自己的数据,修改构造方法(或者直接使用User)方法级安全时,只需要在任何 @Configuration。修改配置 MySecurityConfigurer。注解就能达到此目的。同时这个注解为我们提供了。三种不同的机制来实现同一种功能。

2024-09-12 11:15:58 462

原创 Security 常用配置

• 用途:指定只有拥有特定角色的用户才能访问指定的URL路径。• 用途:指定只有拥有特定权限的用户才能访问指定的URL路径。• 用途:要求用户必须经过认证才能访问指定的URL路径。• 用途:使用Spring EL表达式来控制访问权限。• 用途:允许未认证的用户访问指定的URL路径。• 用途:拒绝所有用户访问指定的URL路径。• 用途:允许匿名用户访问指定的URL路径。• 用途:配置基于表单的登录页面。• 用途:配置基本的身份验证。• 用途:配置注销功能。• 用途:配置会话管理。

2024-09-12 11:14:51 489

原创 Spring Cloud 八股文

首先需要定义降级规则,这些规则可以基于响应时间、QPS等多种指标。

2024-09-11 17:30:06 980

原创 Java 基础八股文

所谓反射,是java在运行时进行自我观察的能力,通过class、constructor、field、method四个方法获取一个类的各个组成部分。在Java运行时环境中,对任意一个类,可以知道类有哪些属性和方法。这种动态获取类的信息以及动态调用对象的方法的功能来自于反射机制。序列化就是一种用来处理对象流的机制。将对象的内容流化,将流化后的对象传输于网络之间。

2024-09-06 17:50:21 785

原创 RabbitMQ 八股文

是一个提供统一消息服务的应用层标准高级消息队列协议。RabbitMQ 的优缺点?解耦 系统A在代码中直接调用系统B和系统C的代码,如果将来D系统接入,系统A还需要修改代码,过于麻烦!异步 将消息写入消息队列,非必要的业务逻辑以异步的方式运行,加快响应速度。削峰 并发量大的时候,所有的请求直接到数据库,造成数据库连接异常。降低了系统的稳定性 本来系统运行好好的,现在你非要加入个消息队列进去,那消息队列挂了,你的系统不是呵呵了。因此,系统可用性会降低。

2024-09-04 15:45:44 795

原创 mysql 八股文

一般情况下,我们创建的表类型是InnoDB。不重启MySQL,如果新增一条记录,id是8;重启,ID是6;因为InnoDB表只把自增主键的最大ID记录在内存中,如果重启,已删除的最大ID会丢失。如果表类型是MyISAM,重启之后,最大ID也不会丢失,ID是8;InnoDB必须有主键(建议使用自增主键,不用UUID,自增主键索引查询效率高)、支持外键、支持事务、支持行级锁。系统崩溃后,MyISAM很难恢复;综合考虑,优先选择InnoDB,MySQL默认也是InnoDB。

2024-09-03 17:26:53 1366

原创 OpenFeign 学习笔记

是一个声明式的web服务客户端;只需要创建一个Rest接口并在该接口上添加注解@FeignClient即可1、添加依赖2、在 Spring Boot 应用程序的主类上添加 @EnableFeignClients 注解,以启用 OpenFeign3、定义 Feign 接口。

2024-09-03 11:46:53 359

原创 Spring MVC 八股文

Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet。它将model、view、controller分离,对web层进行解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。

2024-09-02 16:59:00 1616 1

原创 Spring Boot 八股文

自动配置是指在应用程序启动时,SpringBoot根据classpath类路径下的依赖自动应用配置程序所需的一系列bean和配置类,从而减少开发者的配置工作,提高开发效率。Spring Boot的自动装配实际上是从。

2024-08-29 15:47:48 1255

原创 Redis 八股文

代码更清晰,处理逻辑更简单;不用考虑各种锁的问题,不存在加锁和释放锁的操作,没有因为可能出现死锁而导致的性能问题;不存在多线程切换而消耗CPU;缓存穿透‌是指查询一个在缓存中和数据库中都不存在的数据,导致每次请求都要查询数据库的问题。如何解决:‌使用布隆过滤器‌:布隆过滤器是一种数据结构,利用极小的内存可以判断大量的数据“一定不存在或者可能存在”。通过哈希函数将数据映射到布隆过滤器中,用户发送的请求会先被布隆过滤器拦截,一定不存在的数据就直接拦截返回,从而避免对数据库进行无效查询。

2024-08-28 17:04:10 1100

原创 html学习笔记(1)

定义列表的标题定义列表的描述/详情

2024-08-28 10:58:28 608

原创 mybatis 八股文

虽然 Mybatis 提供了映射 XML 文件来定义 Java 对象与数据库表之间的映射关系,减少了直接处理 JDBC 代码的繁琐,但是关联对象或集合的查询仍然需要通过手动编写的 SQL 来完成,而不是像全自动 ORM 工具那样自动生成。

2024-08-27 15:49:35 1459

原创 Spring八股文

1.实例化Bean,反射的方式生成对象2.填充bena的属性:循环依赖的问题三级缓存3.调用aware接口相关的方法:完成BeanName可以获取容器bean的名称,获取当前这也可以调用容器的服务,对象的属性设置4.调用中的前置处理方法:使用比较多的有设 置ApplicationContext等对象5.调用initmethod方法:判断是否实现了接口,如果有,调用afterPropertiesSet方法6、

2024-08-27 14:04:52 3027 2

原创 idea 使用services

版权声明:本文为优快云博主「佳德_Boy」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。1)找到 .idea > workspace.xml (在启动微服务的时候控制台没有Services窗口。如果没有解决不了,就进行下面的修改配置文件。(2)方案二:修改idea的。替换成如下,然后重启即可。(1)方案一:直接配置。,然后Apply即可调出。

2024-08-14 17:10:54 1226

原创 RabbitMq 消息确认和退回机制

生产者将信道设置成 confirm 模式,一旦信道进入 confirm 模式,所有在该信道上面发布的消息都将会被指派一个唯一的 ID (从 1 开始),一旦消息被投递到所有匹配的队列之后,broker 就会发送一个确认给生产者 (包含消息的唯一 ID),这就使得生产者知道消息已经正确到达目的队列了,(单个),broker 回传给生产者的确认消息中 delivery-tag 域包含了确认消息的序列号。

2024-07-02 15:02:43 840

原创 redis 笔记

通用命令。

2024-06-17 17:50:55 487

原创 SpringBoot中集成Redis(RedisTemplate)

【代码】SpringBoot中集成Redis(RedisTemplate)

2024-06-17 17:46:54 321

原创 JDBC、datasource、数据库驱动、持久层框架之间的区别

是Java平台下的一个标准API,它定义了一组用于连接各种数据库系统、执行SQL语句和处理结果集的接口和类。使用JDBC API,开发人员可以编写能够访问不同数据库系统的应用程序,而无需关注底层不同的数据库细节。其相关内容 在java.sql。

2024-05-22 13:53:32 978

原创 线程池的几种创建方式

/ 自定义策略。

2024-05-22 10:36:08 594

原创 activiti学习笔记

Autowired/*** 创建流程模板* 最要的是加载流程定义资源,addClasspathResource/addInputStream 都可以*/.addClasspathResource("bpmn/evection.bpmn") // 添加bpmn资源.name("需求预审流程").deploy();注:1、Deployment 中只有其中的key 重要,后面频繁用到2、其中ACT_RE_PROCDEF 添加了流程key,ACT_RE_DEPLOYMENT记录添加记录。

2024-04-26 14:28:40 749 1

原创 git 常用命令

直接工具查看或者 使用 git log命令。

2024-04-25 15:54:19 342 1

原创 Rabbitmq 学习

1、Broker :就是 RabbitMQ 服务,用于接收和分发消息,接受客户端的连接,实现 AMQP 实体服务。2、Virtual host:虚拟节点,用于进行逻辑隔离、当多个不同的用户使用同一个 RabbitMQ server 提供的服务时,可以划分出多个 vhost,每个用户在自己的 vhost 创建 exchange 或 queue 等。3、Connection: 连接,生产者/消费者与 Broker 之间的 TCP 网络连接。

2024-01-26 11:03:23 427 1

空空如也

空空如也

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

TA关注的人

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