自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

foralllove的博客

乱七八糟的搬砖

  • 博客(73)
  • 资源 (2)
  • 问答 (2)
  • 收藏
  • 关注

原创 华为OD机试真题-猜字谜【2023Q1】

谜面是多个单词,都需要找到对应的谜底,如果找不到的话,返回"not found"小王设计了一个简单的猜字谜游戏,游戏的谜面是一个错误的单词,比如nesw,玩家需要猜出谜底库中正确的单词。1)变换顺序以后一样的,比如通过变换w和e的顺序,“nwes”跟“news”是可以完全对应的;2)字母去重以后是一样的,比如“woood”和“wood”是一样的,它们去重后都是“wod”1、单词的数量N的范围:0 < N < 1000。3、单词的长度P的范围:0 < P < 20。匹配到的正确单词列表,以“,”分隔。

2023-05-21 00:51:25 630

原创 华为OD机试真题-不爱施肥的小布【2023Q2】

某农场主管理了一大片果园,fields[i] 表示不同果林的面积,单位:(m^2),现在要为所有的果林施肥且必须在 n 天之内完成,否则影响收成。当能效k为9时,fields[0] 需要1天,fields[1] 需要1天,fields[2] 需要1天,fields[3] 需要2天,fields[4] 需要2天,共需要7天,不会影响收成。第一行输入为 m 和 n,m 表示 fields 中的元素个数,n 表示施肥任务必须在 n 天内(含 n 天)完成;对于每组数据,输出最小施肥机的能效 k,无多余空格。

2023-05-21 00:27:25 204

原创 华为OD机试真题-MVP争夺战【2023Q2】

【代码】华为OD机试真题-MVP争夺战【2023Q2】

2023-05-18 18:12:01 319

原创 正码,反码,补码

1.基本认知冯~诺依曼提出的经典计算机体系结构框架。计算机由运算器,控制器,存储器,输入和输出设备组成。存储器的物理本质是有电信号存储,晶体管有单向导电特性,有通电和不通电两种状态,所以存储器的本质是二进制存储。运算器,只有加法运算器,没有减法运算器(由于减法器硬件开销太大被废了 )所以,计算机中的没法直接做减法的,它的减法是通过加法来实现的。加法运算器只需要向前进位就可以了。数学就算中 5 - 2 = 3 可以用 5 + (-2) = 3 表示。2.加法器计算最高位为符号位, 1.

2022-04-10 19:37:41 2225

原创 spring bean的循环依赖 和 解决方式

spring bean 循环依赖问题

2022-04-03 19:33:06 183

原创 计算机寻址方式

简介寻址方式

2022-03-27 19:31:39 1908

原创 redis-持久化主从同步数据

redis的持久化和主从数据同步介绍

2022-03-20 18:52:41 366

原创 redis-布隆过滤器

布隆过滤器,是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。优点:是空间效率和查询时间都远远超过一般的算法缺点:是有一定的误识别率和删除困难布隆过滤器的原理:当一个元素被加入集合时,通过K个散列函数将这个元素映射成一个位数组中的K个点,把它们置为1。检索时,我们只要看看这些点是不是都是1就(大约)知道集合中有没有它了:如果这些点有任何一个0,则被检元素一定不在;如果都是1,则被检元素很可能在。应用的场景一般我们都会用来防止缓存击穿:

2022-03-13 17:34:57 1462

原创 幂等有哪些技术解决方案?

什么是系统的幂等性幂等是数据中得一个概念,表示N次变换和1次变换的结果相同。在系统中相同的请求得到的结果相同高并发的系统如何保证幂等性1.查询,删除天然的幂等操作,无须处理。2. 唯一索引防止新增脏数据。当使用唯一索引时,为了防INSERT时报错影响用户体验,所以需要在插入时使用try{…}catch(){…}体,并捕获异常DuplicateKeyException。当请求数据新增,如果表中存在唯一索引,并发新增报错时,重新查询数据返回结果。3.token 机制防止

2022-03-06 18:17:51 221

原创 @Validated 自定义注解校验请求参数符合枚举值

自定义注解校验请求参数枚举。

2022-02-27 17:02:47 1223

原创 java synchronized锁升级

java synchronized 简述锁升级过程

2022-02-20 19:13:13 265

原创 线程基本介绍

线程介绍

2022-02-13 18:40:42 217

原创 seluth 多线程 traceId,spanId传递

1.问题spring cloud seluth 完成日志追踪的能力,但是seluth不支持线程之间的传递。0 We’re providingLazyTraceExecutor,TraceableExecutorServiceandTraceableScheduledExecutorService. Those implementations are creating Spans each time a new task is submitted, invoked or scheduled....

2022-01-23 17:57:22 965

原创 cpu三大架构

smp对称多处理器结构 cpu到缓存访问速度一一致ls /sys/devices/system/node/#如果只看到一个node0 那就是smp架构numa非一致存储访问结构,非均匀访问存储模型,这种模型的是为了解决smp扩容性很差而提出的技术方案,如果说smp 相当于多个cpu 连接一个内存池导致请求经常发生冲突的话,numa 就是将cpu的资源分开,以node 为单位进行切割,每个node 里有着独有的core ,memory 等资源,这也就导致了cpu在性能使用上的提升.

2022-01-16 17:21:38 3313

原创 JVM 随笔

jvm 信息笔记

2022-01-09 15:46:13 206

原创 WebFluxServerWebExchange 中form data获取问题

@Slf4jpublic class OpenFilter implements WebFilter { @Override public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) { return exchange.getFormData().doOnNext( formData -> { .

2021-11-14 20:29:08 2730

原创 设计模式二十三之适桥接模式

1.什么是桥接模式将抽象与实现分离,使它们可以独立变化。它是用组合关系代替继承关系来实现,从而降低了抽象和实现这两个可变维度的耦合度。2.桥接模式优缺点抽象与实现分离,扩展能力强 其实现细节对客户透明缺点是:由于聚合关系建立在抽象层,要求开发者针对抽象化进行设计与编程,能正确地识别出系统中两个独立变化的维度,这增加了系统的理解与设计难度。3角色...

2021-08-23 00:46:31 72

原创 正则表达式模式

正则引擎主要可以分为基本不同的两大类:一种是DFA(确定型有穷自动机),另一种是NFA(不确定型有穷自动机)。简单来讲,NFA 对应的是正则表达式主导的匹配,而 DFA 对应的是文本主导的匹配。i. ?: 告诉引擎匹配前导字符0次或一次。事实上是表示前导字符是可选的。ii. +: 告诉引擎匹配前导字符1次或多次。iii. *: 告诉引擎匹配前导字符0次或多次。iv. {min, max}: 告诉引擎匹配前导字符min次到max次。min和max都是非负整数。如果有逗号而max被省略了,则表示max

2021-08-23 00:39:39 108

原创 初识正则表达式

正则表达式使用一些特定的元字符来检索、匹配以及替换符合规则的字符串。构造正则表达式语法的元字符,由普通字符、标准字符、限定字符(量词)、定位字符(边界字符)组成。正则引擎正则表达式是一个用正则符号写出的公式,程序对这个公式进行语法分析,建立一个语法分析树,再根据这个分析树结合正则表达式的引擎生成执行程序(这个执行程序我们把它称作状态机,也叫状态自动机)DFA 自动机(Deterministic Final Automaton 确定有限状态自动机)和 NFA 自动机(Non determin...

2021-08-08 21:35:39 57

原创 spring cloud nacos源码解析(4)Instance管理器Service

1.service代表的是一个服务名的集群,包含了所有服务名的所有instance2. @JsonIgnore private ClientBeatCheckTask clientBeatCheckTask = new ClientBeatCheckTask(this); /** * Identify the information used to determine how many isEmpty judgments the service has expe

2021-08-08 20:53:20 289

原创 spring cloud nacos源码解析(3)Instance服务实体

1.当新的服务注册成功后创建instance实例对象。实例对象(pojo/instance)包含那些属性呢 private static final long serialVersionUID = -742906310567291979L; /** * unique id of this instance. */ private String instanceId; /** * instance ip. ...

2021-07-25 20:36:57 1197

原创 dom4j自定义注解xml处理工具

package pers.util.xml.annotation;import org.dom4j.*;import pers.util.xml.model.Dom4jXmlAttribute;import pers.util.xml.model.Dom4jXmlDemo;import pers.util.xml.model.Dom4jXmlField;import pers.util.xml.model.Dom4jXmlNamespace;import sun.reflect.generi.

2021-07-12 02:24:35 344

原创 spring cloud nacos源码解析(2)实例注册的那些事

//客户端注册请求 @CanDistro @PostMapping @Secured(parser = NamingResourceParser.class, action = ActionTypes.WRITE) public String register(HttpServletRequest request) throws Exception { //获取命名空间 key = namespaceId 默认值public final S.

2021-06-27 22:31:40 416

原创 spring cloud nacos源码解析(1)了解nacos

1.第一步下载nacos源码https://github.com/alibaba/nacos.git2.nacos

2021-06-20 20:24:35 256

原创 设计模式二十三之适配器模式

1.什么是适配器模式转换不同系统的资源为目标系统可识别处理的资源。例如充电头(统一处理电流降压为手机可支持的电压)2.适配器优缺点将目标类和适配者类解耦,通过引入一个适配器类来重用现有的适配者类,而无须修改原有码。 增加了类的透明性和复用性,将具体的实现封装在适配者类中,对于客户端类来说是透明的,而且提高了适配者的复用性。 灵活性和扩展性都非常好,通过使用配置文件,可以很方便地更换适配器,也可以在不修改原有代码的基础上增加新的适配器类,完全符合“开闭原则”。...

2021-06-20 18:31:40 57

原创 idea,xml 文件注释乱码,调整文件编码格式

idea上从git下拉的代码发现文件注解格式乱码

2021-06-13 19:09:19 2373 1

原创 设计模式二十三之代理模式

目录1.什么是代理模式2.优缺点3.工厂模式的角色静态代理动态代理Cglib代理1.什么是代理模式通过中介进行访问,解决隐藏和保护请求方的功能。2.优缺点优点: 1.隐藏客户端,起到保护隔离的效果 2.扩展客户端请求功能 3.降低客户端和目标服务的系统耦合缺点: 1.通过代理处理,增加系统程度,增加系统复杂性,同时降低访问速度3.工厂模式的角色原始接口请求和实现public interface P...

2021-06-13 18:24:03 88

原创 spring AOP @Around @Before @After 区别

spring aop中@Around @Before @After三个注解的区别@Before是在所拦截方法执行之前执行一段逻辑。@After 是在所拦截方法执行之后执行一段逻辑。@Around是可以同时在所拦截方法的前后执行一段逻辑

2021-06-06 20:56:22 649

原创 Could not load TestContextBootstrapper [null]. Specify @BootstrapWith‘s ‘value‘ attribute or make th

再用springboot的test的时候,提示这个,出现这个错误的解决方法是jar包冲突 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.2.12.RELEASE</version> .

2021-06-06 20:54:28 1495

原创 sleuth日志追踪

maven依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-sleuth</artifactId> </dependency> <dependency> <groupId&

2021-05-23 21:13:24 147

原创 group by 和 distinct 效率对比

数据库CREATE TABLE `tb_user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `user_name` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL, `user_password` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL, `birth` datetime DEFAULT NULL, `sex` c...

2021-05-16 21:43:40 1270 1

原创 @RequestBody 和 @GetMapping 使用时效原因

当我们使用@GetMapping的时候配合使用@RequestBody接受参数会发现无法接受到参数。网上说@RequestBody 不能和@GetMapping搭配使用,需要使用@PostMappig。其实不是必然。@RequestBody可以处理的是请求的body体内容,需要识别Content-Type的值。http请求为application/json @RequestBody才可以解析body值。@GetMapping前端大多使用了application/x-www-f...

2021-05-09 20:59:41 1376

原创 srpingboot 整合 seata 1.3.0 + nacos 1.3.2

1.下载seata服务端修改config文件type类型使用nacosregistry { # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa type = "nacos" loadBalance = "RandomLoadBalance" loadBalanceVirtualNodes = 10 nacos { application = "sh-seata-server" serverAddr = "1..

2021-05-09 20:41:33 178 4

原创 @EnableAsync和@Async

1处理问题在业务层中我们需要同时修改多张表的数据并且需要有序的执行,如果我们用往常的同步的方式,也就是单线程的方式来执行的话,可能会出现执行超时等异常造成请求结果失败,及时成功,前端也需要等待较长时间来获取响应结果,这样不但造成了用户体验差,而且会经常出现请求执行失败的问题2.处理@Async注解帮我们实现了创建线程池的繁琐,提高了我们的开发效率。@EnableAsync用于开启异步支持,@Async标注需要执行的异步方法3.自定义线程池开发可以自定义线程池注入bean来完成@As...

2021-04-26 02:51:47 532

原创 设计模式二十三之工厂模式--建造者模式

1.什么是建造者模式指将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示,这样的设计模式被称为建造者模式。它是将一个复杂的对象分解为多个简单的对象,然后一步一步构建而成。它将变与不变相分离,即产品的组成部分是不变的,但每一部分是可以灵活选择的。2.优缺点优点:高内聚低耦合缺点:维护成本大3.适用场景复杂产品的构建4.角色产品:@Datapublic class Car { private String engine; priva..

2021-04-18 20:19:57 90 1

转载 ArrayList底层数组扩容原理

ArrayList是一个普通的类,如果我们开心,可以自己写一个。ArrayList初探 - 知乎专栏文章发表后,评论区有人问如下问题。我们先回顾一下之前的所说过的数组,话不多说,上代码:老规则,我们继续画一画,加深一下印象,上图:这个图我们去掉了ArrayList初探 - 知乎专栏一文图里那些无用的细节(方法区,常量池等),方便大家看起来清晰,我们用eclipse的debug功能看一下,看是否与我们图上画的一致再看一下执行结果,也在我们期望中。好,我们改一下代..

2021-04-11 22:00:31 341

转载 ArrayList扩容机制(基于jdk1.8)

<div id="article_content" class="article_content clearfix"> <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_views-b5506197d8.css"> <div id="content_views" class=...

2021-04-11 21:41:18 201

原创 设计模式二十三之工厂模式--抽象工厂模式

1.什么是抽象工厂模式是一种为访问类提供一个创建一组相关或相互依赖对象的接口,且访问类无须指定所要产品的具体类就能得到同族的不同等级的产品的模式结构。解决工厂方法模式无法处理多产品问题。2.优缺点优点:可以在类的内部对产品族中相关联的多等级产品共同管理,而不必专门引入多个新的类来进行管理。 当需要产品族时,抽象工厂可以保证客户端始终只使用同一个产品的产品组。 抽象工厂增强了程序的可扩展性,当增加一个新的产品族时,不需要修改原代码,满足开闭原则缺点: 新增产品种类工厂都需要更新..

2021-04-04 20:29:10 162 1

原创 设计模式二十三之工厂模式--工厂方法模式

目录1.什么是工厂方法模式2.优缺点3.适用场景4.工厂模式的角色更多详细扩展代码:1.什么是工厂方法模式为了解决简单工厂模式违背开闭原则的问题,对简单工厂模式进一步抽象化,使系统在不修改原来代码的情况下引进新的产品,即满足开闭原则。2.优缺点优点: 新增产品时新增工厂类就可以无须修改工厂代码,灵活性增强。同时满足高内聚,低耦合特性缺点:1.类的数量容易过多,增加复杂度 2.抽象工厂只能生产一种商品3.适用场景客户不关心创建产品的细节,...

2021-04-04 19:48:28 90

原创 设计模式二十三之工厂模式--简单工厂模式

1.什么是简单工厂模式简单工厂模式属于创建型模式又叫做静态工厂方法模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。2.优缺点优点:简化客户端创建消费对象的困难只专注消费。明确了各自的职责和权利,有利于整个软件体系结构的优化。缺点:违背了高内聚的责任分配原则,工厂集中了全部的创建逻辑,当工厂出现问题系统会崩溃。当有新的产品类型时,必须要修改工厂的创建逻辑。对系统的维护和扩展非常不利。3.适用场景工厂产品少,对如何创建产品不关心。4.工...

2021-03-28 18:48:15 117

idea配置ssh框架

idea配置ssh框架

2018-04-28

Tomcat配置ssl证书和根目录修改

有关于Tomcat配置ssl证书和TOMCAT的根目录修改。然后可以用https+域名直接访问工程。。。。。。。。。。。。。。。。。。。

2017-09-26

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

TA关注的人

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