自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【linux】sed/awk命令检索区间日志

sed,awk都是流处理,无法回溯信息,因此无法得知当前区间是否是最后一次,所以最新一组日志需要使用反转命令找第一次结束日志...开始日志区间再倒转即可。tac filename | sed -n '/任务结束/,/任务开始/p;/任务开始/q' filenametac filename | awk '/任务结束/{flag=1} flag;/任务开始/{flag=0;tac filename | awk '/任务结束/,/任务开始/;任务开始/{exit}' | tac。

2025-09-09 16:02:44 561

原创 Java之函数式接口、lambda表达式、stream流操作、Optional容器、方法引用

lambda表达式是Java 8引入的一种新特性,用于简化函数式接口的实现能够替代函数形参中需要实现的匿名内部类,使得代码更加清晰简洁,此外,在Java集合、数据流中也常常能见到它的身影。比如若要创建一个线程,需要在new出线程的同时实现参数Runnable接口,这就是一个实现了Runnable@Override});});可以很直观的看到lambda表达式省略了大量非重要代码(样板代码),只保留具体实现内容。

2025-05-21 16:55:17 697

原创 SpringCloud多个微服务场景下轻量级feignclient架构(架构图+代码实现)

进行到这一步,似乎上述问题都已解决,只需要在要请求的地方调用feignclient接口方法即可,但是若要访问的表数量随着项目发展不断扩大,再在代码里注入客户端Bean,使用各种接口方法去发送请求并从返回体中取数据会较难维护,代码没有那么清晰明了,因此可以提供一个统一的入口,通过这个入口来实现对任一客户端的调用,这个入口即。上篇博客介绍的是单个工程简单使用FeignClient的例子,如果在多工程情况下,每个工程都需要增删改查多张表呢?来说是需要屏蔽的,因此通常不会直接让微服务工程依赖数据库工程。

2025-05-13 16:54:18 1339

原创 SpringCloud微服务之FeignClient介绍、使用、注解参数解析

FeignClient是Spring Cloud的一个声明式HTTP客户端工具,简化了微服务之间的HTTP调用,通过注解和接口定义能够自动且快速发送HTTP请求。在接触FeignClient之前,对HTTP请求更多的是在前端代码,而FeignClient是后端用来请求HTTP服务(也就是后端某个工程需要请求某个服务),它与前端请求并没有明显的差距,都包括请求url,请求方式,请求参数等,只是书写方式有区别。

2025-05-08 10:24:39 4044

原创 请求参数、路径参数、查询参数、Spring MVC/FeignClient请求相关注解梳理

它是指在请求中传递给服务器的数据,可以是URL携带的参数,也可以是请求体,请求数据类型可以是路径参数(rest风格)、查询字符串、JSON数据等,适用于GET/POST/PUT/DELETE方法。在进行HTTP请求时,会看到“请求参数”、“查询参数”、“路径参数”相关字眼,那么它们之间的关系是什么呢?使用FeignClient进行请求或处理http请求时,会使用到许多请求相关注解,现梳理一下以免混乱。: 当没有给定任何注解属性时,会默认将URL请求参数名和响应参数名称进行映射,比如将请求参数。

2025-04-23 08:52:07 1375 1

原创 数据库索引相关原理、explain解析、索引条件下推(ICP)

记录一下在工作时碰到的问题。

2025-03-26 16:45:57 716

原创 数据库查询之游标分页

普通分页:常用的基于偏移量的分页,使用LIMIT和OFFSET来获取分页数据//返回第50~60行数据游标分页:通过唯一的、有序的字段(游标)来标记分页的起始位置,每次分页查询时候使用'>'或‘<’某个特定游标值实现分页。//id为游标如果上面这条sql查出来的最后一条数据id=14。

2025-03-18 18:23:41 752

原创 Springboot Bean创建流程、三种Bean注入方式(构造器注入、字段注入、setter注入)、循坏依赖问题

构造器注入时会通过构造函数注入所有必须的依赖,当两个组件BeanA和BeanB之间存在循坏依赖时,执行BeanA的构造函数需要注入BeanB(此时BeanA还未创建),由于BeanB还未生成,因此转而先创建BeanB,执行BeanB的构造函数,而BeanB同样需要注入BeanA,于是出现了死锁情况,两个Bean都无法创建,因此如果使用构造器注入而又出现循环依赖时,先创建BeanB:发现依赖BeanA,转而创建BeanA,BeanA必须使用完全实例化的BeanB,但此时无法达成,失败。

2025-01-09 20:56:30 1888

原创 this调用@Transaction事务方法/AOP方法失效原因

当一个类C使用AOP,即面向切面编程时,Spring会创建C的代理对象来拦截对原始对象的调用,这样才能对目标对象的方法进行增强,因此Spring启动时会生成代理对象的bean并放入容器中,自动注入C类的对象时,获取的也是C的代理对象。更简单一点的理解,当使用代理对象调用非事务方法时,该方法并不需要任何切面操作,那么代理对象会在代理方法中直接调用原始对象的目标方法,那么在这个目。而通过对象.方法的方式会经过代理,这就是this调用事务方法失效的原因,因为没有通过spring代理。

2024-12-12 20:04:21 934

原创 开发中常用的linux命令(自存)

记录一下开发中会使用到的linux命令,持续更新。

2024-12-12 10:27:20 743

原创 Java Springboot 后端使用Mockito库进行单元测试流程

使用mock可以很好的将要测试的方法和它的依赖分隔开,降低了模块间的耦合,非常适合外部资源较难构造或方法调用太深的场景。,以防测试时各级方法互相调用太深(调用的方法应该在它自己的单元测试中进行测试),相当于只关注测试方法的宽度而不在意它的深度。因此,对于要测试的方法中使用到的外部类或方法,可以考虑使用模拟对象来模拟它们的调用并自定义好返回的值,方法有一个int参数,那么可以通过1)中的普通写法进行打桩,或者使用2)-2的方式进行打桩,然后使用。打桩之后不会真正去调用,会忽略真实方法的执行结果,一般使用。

2024-10-11 15:21:13 2256

原创 CORS解决浏览器跨域请求(同源策略)限制原理、后端springboot CROS跨域解决方案

源=协议+域名+端口号不看后面跟着的路径,如的源是http和https是两种连接协议服务器明确表示拒绝跨域请求或没有表示的,则校验不通过服务器表示允许跨域请求,则浏览器校验通过由于要求服务器在响应体添加相关字段来通过校验,所以服务器必须是自己人,比如无法向百度的接口发送跨域请求,因为人家不认识你,就无法在响应体头里配置源。

2024-09-21 16:47:23 1536 1

原创 求子集算法(有重复数字&无重复数字)/ 全排列算法/ 组合算法

本文介绍给定求子集算法,注意是数组而不是集合,这意味着数组中可能有重复元素。因此本文会分别介绍无重复数字(集合)求子集,和有重复数字求子集。

2022-11-05 21:11:34 2223

原创 组合算法/全排列算法/求子集算法

目录写在前面组合写在前面组合从后开始选:class Solution: def combine(self, n: int, k: int) -> List[List[int]]: ans=[] def sub_combine(n,k,lst=[]): #n个数里面选k个,保存在lst里 if(k==0): #已经选完 ans.append([i for i in lst])

2022-10-12 11:38:09 1719

原创 全排列算法(无重复数字全排列/有重复数字全排列)/ 组合算法/ 求子集算法

无重复/有重复数字全排列相关算法

2022-05-19 09:00:00 10605

原创 Kettle(Pentaho Data Integration) 下载安装&使用介绍/功能汇总

目录0 写在前面1 产品介绍2 产品安装2.1 kettle安装2.2 数据库以及连接驱动安装3 功能测试3.1 数据库连接3.2 两大功能3.2.1 转换3.2.2 作业3.3 输入3.4 输出3.4.1 表输出3.4.1.1 字段映射3.4.1.2 增加序列3.4.1.3 替换NULL值3.4.2 更新/插入3.4.3 更新3.4.4 删除&增加常量3.5 转换例子3.5.1 排序&去重3.5.1.1 去除重复记录(并计数)3.5.1.2 排序3.5.2 执行自定义SQL语句3.5.2.

2021-11-06 17:11:03 37245 6

原创 Plotly.js使用详细介绍(折线图、饼状图、点图、水平条形图、桑基图、树状图、等值线图)

这里写自定义目录标题写在前面HTML代码写在前面暑假的时候帮老师测了几个开软库,有几个感觉还比较有意义,当时也花了一些时间认真整理,所以决定发到博客,希望给有需要的人一点帮助,也方便我今后自己直接查看。Plotly.js这个库还是比较有意思的,而且官方文档写的也很全面,看起来不难,就是有一些属性没有注释,可能猜不到它表示的是什么意思,因此本文档对属性进行了一些整理。因为是和同学一起测试了Plotly.js的基础图部分,因此我这里只发布我写的那部分,所以只有如文章标题写到的那七种图,里面很多方式都是通

2021-10-30 22:13:27 12835

原创 p-sum结构解释+代码 二叉区间树

目录p-sum理解代码最近在论文"Private and Continual Release of Statistics"中了解到了一个这样的structure:Definition 3.2 (p-sum). A p-sum is a partial sum of consecutive items. Let 1 ≤ i ≤j. We use the notation ∑[i,j]:=∑jk=iσ(k) to denote a partial sum involving items i through

2021-09-10 15:23:39 1374 3

原创 【并查集】力扣947.移除最多的同行或同列石头 (一维/二维)深度搜索&并查集(4种题解)

坐标轴深度搜索版:class Solution: def removeStones(self, stones: List[List[int]]) -> int: # 二维深搜版 lens=len(stones) xdict={} # key:坐标x value:横坐标为x的纵坐标集合 ydict={} # key:坐标y value:纵坐标为y的横坐标集合 vis=set() #visit

2021-06-01 10:45:30 525 1

原创 QickSort 快速排序(快排)详细复盘 / 思路+代码+注意点(python实现)

排序实战传送门:leetcode排序(快排可通过)快排前前后后写了也不知道多少次,大一下还是大二上第一次写快排,但是因为对递归还不懂,所以总是只记得个大概,后来在力扣上刷题也写过好几次,但是每次写都会犯同样的错误,于是好好复盘一下。同时也从头梳理一遍快排,直白但详细写下我的理解,希望对读者有一定帮助。快排采用分治的思想,用递归的方式实现排序,时间复杂度O(nlogn)。但在最差的情况下,比如要升序排序但是原始数组是逆序,每次递归都只比上一次递归少一个数,退化为冒泡排序,此时时间复杂度为O(n²)。#基

2021-04-20 14:30:54 392 2

原创 C++ swap(交换)函数 指针/引用/C++自带

ea fe

2021-01-30 12:21:47 23259 3

原创 VMware下Ubuntu18.04安装+源更新+vmtools安装+gcc安装+vim安装配置一条龙(转载)

这篇博客是对安装Ubuntu系统操作的汇总。如果你需要进行标题上的操作,那看这一篇博客就够了。注意:是在VMware Station虚拟机下安装操作系统~作为一个重装了三次Ubuntu系统的人,下面这些博客都是经我测试最为简单快捷安装配置Ubuntu系统的博文,童叟无欺呀。下面进行放送!(推荐按照下面次序进行操作)1.安装Ubuntu18.04点我安装Ubuntu18.04 ,安装Ubunt...

2020-03-18 10:55:46 1128 1

原创 洛谷P1182-数列分段(详解)

写在原来的地方:点这里题目给定一个长度为n的数列A,要求将它分为m段,要求每段连续,且每段和的最大值最小。N<=10e5,m<=n,Ai之和不超过10e9。这题一看就知道我不会。所以很老实的去看了看题解。题解也真是避重就轻,尼玛的重要的地方就说:这个要自己思考一下……好吧,还好有代码。讲讲我自己的理解。首先这个数字最大值一定存在(玄学。既然存在那一定找得到,即使有时候错过...

2019-08-16 17:38:56 1789

原创 01背包+分组背包(一维/二维/搜索

个人博客地址(原文:点这里上面的网址中写了01背包/分组背包的一维,二维数组方法,还有搜索法以及自己的一些思考。个人对于网上分组背包的二维转移方程觉得还不太完善(或者我自己理解的不太对),而且没有找到很完全的代码~~(可能恰好没找到)~~ ,所以就自己写了,有附题目地址,如果想看二维数组分组背包,直接拉到最后,前面都是废话。不想看原地址的,下面是原文:一维版01背包洛谷P1048采药...

2019-08-16 17:23:53 517

原创 类似于可放回抽样的排列问题

刘汝佳老师的紫薯写了不重复排列问题以及重复排列问题,这可以类比放回抽样。那如果有一个不放回抽样问题呢?比如:用户给定一个字符串长度,字符串中每个字符可以取’a’-‘z’,请输出所有符合条件的字符串。这类问题和紫薯中的排列问题不一样的地方在于~~(紫薯还只看了一点,所以不清楚里面有没有这类算法,但是可能因为这个算法太简单不讲也可能。。)~~...

2019-03-23 20:51:05 1220

空空如也

空空如也

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

TA关注的人

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