自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (2)
  • 收藏
  • 关注

原创 SQL中的窗口函数

窗口函数是SQL中的一项高级特性,用于在不改变查询结果集行数的情况下,对每一行执行聚合计算或者其他复杂的计算,也就是说窗口函数可以跨行计算,可以扫描所有的行,并把结果填到每一行中。这些函数通常与OVER()子句一起使用,可以定义窗口或分区,并在上面执行计算,使用窗口函数,可以使许多难以处理的棘手问题变得较为容易。窗口函数的特点输入多行(一个窗口),返回一个值:窗口函数为每行数据进行一次计算,但不会改变原始查询结果集的行数计算方式灵活:可以使用字句将数据分区,并使用order by。

2024-08-03 23:10:08 2900 7

原创 SpringBoot使用Jasypt加密

Jasypt(Java Simplified Encryption)是一个简化Java加密操作的工具,它是一个开源的Java库,旨在帮助开发者以最小的努力添加基本的加密功能,同时无需深入了解密码学的工实现原理,对开发者比较友好。优点高安全性:采用密码学强度加密技术,支持多种加密算法,平衡了性能和安全性。配置灵活:支持自定义加密算法。支持多种数据类型:可以加密密码、文本、数字、二进制文件等多种文件类型。

2024-07-20 13:53:17 699

原创 Kafka内外网分流配置listeners和advertised.listeners

Kafka部署在内网,内网Java服务会使用Kafka收发消息,另外,Java服务会与其他第三方系统使用kafka实现数据同步,也就是外网也会发送消息到kafka,外网IP做了端口映射到了内网,Kafka 服务器对外宣传的端点信息,它会将地址注册到Zookeeper中,用于告诉客户端应该连接到哪个地址和端口,也就是客户端真正要访问的地址。,可以同时配置多个, 并且用逗号隔开,监听器的名称和端口必须是唯一的,端口相同,就冲突了。类似,但是可以指定不同的地址或端口,如果没有配置,则默认值和。

2024-06-16 15:51:39 1318 1

原创 Redis实现延迟队列

个人推荐使用Redisson 的。

2024-05-31 00:21:54 1231

原创 SpringBoot配置tomcat access日志

Spring Boot使用嵌入式的Tomcat作为默认的Web服务器,可以通过配置文件方式来开启和定制access日志。access日志记录了每一个HTTP请求的信息,包括请求的来源、请求的资源、响应状态码等,常常用来做数据统计、性能监控,比如通过分析访问日志,可以发现性能瓶颈和优化机会,提升应用的响应速度等。

2024-05-23 22:58:29 726

原创 Skywalking配置traceId

SkyWalking是一个开源的分布式系统观测平台,旨在解决微服务和云原生架构中常见的性能监控和故障排除问题。自2015年由Apache基金会孵化以来,SkyWalking已经成为全球范围内广泛使用的APM(应用性能管理)解决方案之一。

2024-05-15 23:57:41 1220 1

原创 Java日志总结

开发中,日志记录是不可或缺的一部分,应用日志的记录主要用于:记录操作轨迹数据、监控系统运行情况、系统故障定位问题,日志的重要性不言而喻,想要快速定位问题,日志分析是个重要的手段,Java也提供了多种日志框架来进行有效的日志管理。本文将探讨Java常用的日志框架以及使用案例。

2024-05-12 21:34:59 937

原创 static变量获取nacos配置文件值

static方法修饰的静态变量从配置文件中获取,用到的地方还是挺多的,比如在一些工具类当中,通常这些工具类里面的变量是全局的,在很多地方都有调用。这里1/2/3方案都是先将Spring对象中的变量加载完成后,再主动将值赋值给静态变量实现的,因为只加载一次,所以当Nacos配置文件中值更新的时候,我们需要重启服务才能生效。

2024-04-27 19:47:40 872 1

原创 【Caused by: java.lang.ClassNotFoundException: org.apache.commons.pool2.impl.GenericObjectPool】

然后一直启动还是报错,以为是版本号问题,试了几个不同版本似乎没有变化,于是尝试退出idea并清除缓存。重新打开idea,等待加载完成,启动不报错了,OK问题解决。尝试了下,在maven里面添加了上面的依赖。然后点击通义灵码工具问了下,回答是缺少。

2024-04-25 20:42:48 705 1

原创 javaagent使用

是在JDK1.5以后引入的,它能够在不影响正常编译的情况下修改字节码,相当于是在main方法执行之前的拦截器,也叫premain,也就是会先执行premain方法然后再执行main方法。JDK 1.6后引入了agentmain模式,同样提供了一个agentmain方法,可以在main方法执行之后运行。方法将我们的jar包注入到对应的进程当中,然后被注入的进程就好调用jar包里的。可以看到,我们的agentmain方法的代理已经生效,其中。包含agentmain方法的类(类的全路径名)

2024-04-19 23:01:02 988

原创 feign接口调用报错【JsonParseException: Illegal character ((CTRL-CHAR, code 31)): only regular white space 】

在调用chain.doFilter(request, response)的时候就会报上面的错误,刚开始以为是没加token或者参数里面有特殊字符原因,但在exclude该路径并对feign参数检查后,发现并不是,仍然会报错。,即触发压缩请求数据的参数大小,也就是超过这个最小参数大小的时候,就会触发压缩,这个值默认为2048(KB),也就2M大小,我这里参数比较多,所以调到了。在servie服务里面,有用到过滤器进行token进行权限校验。今天在调用feign接口的时候,总是报错,如下。

2024-04-10 21:36:39 433

原创 Gradle入门初探

我们都创建过基于Maven的项目,maven可以很好的管理项目的依赖,编译和打包项目,Gradle是一个和Maven类似的自动化构建工具,Maven是基于xml文件格式,而Gradle是基于Groovy的语言,这使Groovy的构建脚本更加的灵活并且易于编写。在性能上,Gradle也引入了增量构建以及一些缓存机制,也要比maven构建速度更快,总之,Gradle的优点要比maven多,作为继maven之后的新一代的构建工具,如果我们要创建新的项目,不妨使用Gradle尝试下。

2024-04-07 19:26:32 1565

原创 Groovy基础入门

Groovy是运行在JVM中的一种动态语言,可以在Java平台上进行编程,使用方式基本与使用Java代码的方式相同,它的语法与Java语言的语法很相似,与Java相比,Groovy更加灵活、简洁,而且完成同样的功能基本上所需要的Groovy代码量会比Java的代码量少,它还增加了很多功能,如:函数式编程、运行时的灵活性以及许多元编程内容。它可以用来构建一个完整的工程,或者作为一个Module,第三方集成到Java代码中。甚至可以作为脚本在执行时动态编译。

2024-03-29 00:20:12 1466

原创 解决The following method did not exist:net.sf.jsqlparser.statement.select.SelectExpressionItem报错

总结:原本以为是mybatis-plus版本导致的,结果改了几次版本号之后,依然没有用,所以只好从报错日志分析,先排除依赖冲突,再添加依赖解决。查了一下,是mybatis-plus的版本冲突问题,但到底是哪里的冲突呢?可以看到是项目中引入的另一个服务xk-basic,依赖中的mybatis-plus-extension中。大概意思是jsqlparser包冲突了,但是哪两个依赖里面的jsqlparser呢?于是,我使用了Maven-Helper工具,将mybatis-plus-extension中的。

2024-03-21 22:56:42 2443

原创 Spring状态机简单实现

状态机,又称有限状态自动机,是表示有限个状态以及在这些状态之间的转移和动作等行为的计算模型。状态机的概念其实可以应用的各种领域,包括电子工程、语言学、哲学、生物学、数学和逻辑学等,例如日常生活中的电梯、风扇、门闸机等,都会涉及到多种状态,随着动作的执行会进行状态的转移,而在软件编程领域,采用状态机的思路同样可以简化我们的设计流程,会使代码的可读性和可维护性得到增加。

2024-03-14 23:45:16 1815

原创 设计模式-状态模式

状态模式是一种行为设计模式,使用状态模式,能够在一个对象内部状态变化时改变它的行为,使其看起来就像改变自身的类一样。核心点:区分事物内部的状态,把事物的每种状态都封装成单独的类,跟此状态有关的行为都被封装在这个类的内部,当对象的状态改变时,它的行为也会随之改变。

2024-03-07 22:49:03 1056

原创 定时任务框架

注:此处的执行器,选择上一步添加的执行器,然后填写任务描述、负责人、报警邮件(接收人),填写调度配置、任务配置(注解接入属于BEAN模式,JobHandler需要跟第四步的3)里面注解填写的JobHandler名称一致,填写高级配置(路由策略、调度过期策略、阻塞处理策略需谨慎选择),子任务ID一般为空,任务超时时间和失败重试次数根据业务需要填写。- 子任务:每个任务都拥有一个唯一的任务ID(任务ID可以从任务列表获取),当本任务执行结束并且执行成功时,将会触发子任务ID所对应的任务的一次主动调度。

2024-02-29 22:45:44 1338

原创 SpringBoot集成Mqtt发送消息

MQTT是一种物联网消息协议,为Message Queuing Telemetry Transport的缩写,即,协议基于发布订阅模式进行通信,有开销低、带宽小、轻量的特点,通常应用在物联网数据采集、移动应用、智能硬件、电力、能源等领域。

2024-02-22 23:01:51 1460 4

原创 设计模式-访问者模式

访问者模式是设计模式中行为型模式的一种(其他的还有如创建型、结构型),听说是设计模式中比较难理解的一种,最近项目中用到了该模式,所以今天总结和实践一下。

2023-12-14 22:36:06 338 1

原创 Redission分布式锁原理初探

在多线程并发请求当中,为了保证我们的资源同一时刻只有一个线程进行操作(如商品超卖问题、购票系统等),我们通常要添加锁机制,如ReentrantLock,也就是可重入的互斥锁,与synchronized功能类似,因为比较灵活,所以经常使用。这在单机情况下是没有问题的,但在多节点的情况下,也就意味着有多个进程,ReentrantLock锁机制可能就会不起作用,所以我们需要一种能够跨进程的锁,也就是同一时刻只能让一个进程获取锁,来控制共享资源的访问。

2023-12-08 00:01:15 181

原创 repository does not exist or may require ‘docker login‘: denied: requested access to the resource is

问题描述:最近在学习kubernetes的使用,在部署SpringBoot项目的时候,总是拉取不到本地的docker镜像,提示就是:repository does not exist or may require 'docker login': denied: requested access to the resource is denied,pod描述如下图所示而我当前的docker镜像明明是有的并且我的kubernets部署文件deploy.yaml也是配置的不从远程拉取镜像,如下问题解

2021-05-09 11:18:43 20756

原创 Github clone项目很慢

今天clone github项目的时候,网速很慢,想着能不能找个方法加速出现的问题然而在push的时候push出错git pushfatal: unable to access ‘https://github.com.cnpmjs.org/zhang009/blog.git/’: OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com.cnpmjs.org:443解决使用以下命令查看git远程发布的地址

2021-02-22 21:41:58 215

原创 后端实体类isXXX开头的属性,传到前端后自动去掉is

最近在做一个前后端分离的小案例的时候,前端一直获取不到后端两个is开头的属性值,后来打印后发现is的前缀被自动去掉了。由此想到以前在看开发规范的时候,对这个一点有一些印象,大概就是避免使用is开头来命名属性值。特此记录一下。数据库定义如下:两个字段为tinyint类型对应的实体类中属性定义如下:两个属性为布尔类型前端获取到的值:对于产生此问题的原因,又看了一下阿里的开发规范意思是建数据库表推荐表示是否的字段以is开头,但类中要避免使用is开头的变量命名,推荐使用resultMap进行映射。

2020-08-30 17:40:50 3218 3

原创 vue中解决v-show中的值改变,但视图不刷新问题

vue中解决v-show中的值改变,但视图不刷新问题问题:之前使用全局变量和v-show来解决div隐藏问题,类似这样<el-button type="primary" @click="showAdvanceSearchView=!showAdvanceSearchView"> <div v-show="showAdvanceSearchView" > X...

2020-04-11 13:06:39 13113 3

原创 elementUI布局el-aside消除底部滚动条

在elmentUI中使用了el-aside布局侧边栏,但是莫名出现了底部的滚动条,如下解决方法:在el-aside下面添加然后底部滚动条就没了,如果消除侧边的滑动条,把el-scrollbar中样式的height改成100%应该也是可以的。...

2020-04-04 18:53:58 12151 5

原创 Cannot get a STRING value from a NUMERIC cell

使用POI读取单元格内容的时候,在读取到电话号码的时候报错Cannot get a STRING value from a NUMERIC cell读取的表格如下,手机号码解决办法:在遍历获取单元格后,遍历前加入cell.setCellType(CellType.STRING);另外单元格格式CellType还有如下类型:CellType _NONE未知类型,用于表示初始...

2020-03-27 12:33:03 6724 1

原创 npm ERR! code ELIFECYCLE

今天参考这篇文章使用Hexo搭建博客的时候,执行到最后一步,也就是执行hexo s的时候,浏览器http://localhost:4000出现下面字符串<%- partial(’_partial/head’) %> <%- partial(‘partial/header’) %><%- body %> <% if (theme.sidebar &amp...

2020-03-14 14:32:39 480 3

原创 MyBatis命令行实现逆向工程

1.MyBatis逆向工程介绍在开发过程中,经常有需要使用MyBatis的情形,通常情况下,MyBatis构建项目避免不了写实体类、Dao接口、Mapper映射文件,这些工作都类似,具有一定的重复性,有的时候也容易出错,于是就有人发明了【MyBatis逆向工程】->MyBatis Generator。MyBatis Generator(MBG)是一个代码生成器, 可以生成我们所需要的dao...

2020-02-28 21:49:24 489

原创 WebStorm中在Terminal,npm命令不能使用: ‘'npm' 不是内部或外部命令,也不是可运行的程序 或批处理文件问题

在使用Vue-cli构建项目时候,使用webStorm打开项目,在Terminal控制台不能使用npm命令查看了我的WebStorm中Setting配置,貌似没问题这个问题我推测应该是环境变量的问题,我安装node.js时并没有配置环境变量,只是一直next完成安装的参考博文点击查看,重新配置了node系统变量和用户变量,如下再次重启WebStorm,发现npm命令仍然不能使用,挠头...

2020-02-27 17:35:19 16274 21

原创 Circular view path []: would dispatch back to the current handler URL [/user] again.Check your ViewR

今天使用SpringBoot+Freemarker写一个小Demo,Controller接口返回model值,使用ftl模板浏览器显示的错误:SpringBoot后台显示:javax.servlet.ServletException: Circular view path [user]: would dispatch back to the current handler URL [/us...

2020-02-18 19:43:06 2931 3

原创 Dependency‘org.framework:spring-webmvc:’ not found

maven新建了一个工程,但总是找不到依赖,也就是依赖不能自动下载,即下面情况idea上面配置maven有两种方法,一种是用idea自带的maven,另一种是自己下载的maven,我试了两种都行不通,依旧是上图的情况试过的解决方法:1.检查镜像,这里我换成了阿里云的下载源,看不出来有什么毛病2.检查IDEA中maven的仓库配置,我用是自定义的仓库,仓库已经在settings.xml中...

2020-02-16 11:52:28 10215 10

原创 400Bad Request异常

400Bad Request异常今天写JavaWeb项目,ajax传输数据到后台,发现后台接收不到数据,浏览器上面显示404 bad request,如图这个明显是ajax传输过程中语法错误,我仔细检查了传输的json对象的字段名字,发现并没有错误。网上给出400Bad Request的解决方法都是在ajax方法里加上contentType:‘application/json; charse...

2019-06-29 21:14:01 10496

原创 GNU和GPL

GNUGNU 是一个自由的操作系统,名称由来字GNU’s Not Unix的递归缩写(递归缩写:即用自身来解释自身,就像递归函数自身调用自身一样)Gnu在英文中为非洲牛铃,这个操作系统是GNU计划的主要目标,其内容软件以GPL方式发布,由Richard Stallman发起,由于GNU 自己开发的内核 Hurd 尚未被开发成功,离实用还有一定的距离。因此,GNU 通常使用 Linux内核,199...

2019-01-27 22:07:21 1209

原创 Android:使用帧布局实现霓虹灯效果

最终目的:使用帧布局实现霓虹灯效果,要求用到线程,能显示变换不同的颜色的霓虹灯动画效果。效果图布局文件主布局文件运用了FrameLayout布局和七个不同大小的TextView,内容居中显示,即layout_gravity=“center”&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;FrameLayout xmlns:android...

2018-11-05 19:52:53 3333

原创 Android:设计一个简单的调查问卷

设计一个简单的调查问卷,要求用到TextView,Button,CheckBox,RadioButton,EditText等控件今天写了一个demo,里面用到了常用的布局,以及常用的几种控件,这里调查问卷名字为大学生日常消费调查问卷,是参考网上的常用调查问卷,选择了几个问题,为了省事,这里我只选择了6个问题,最终效果:用户填写完调查问卷,点击提交,页面跳转到另一个结果页面,显示用户提交的数据结果...

2018-11-04 11:57:35 17624 18

原创 提出问题

在自己动感情的时候,赶紧动手动脚,追问问题。

2018-10-15 15:42:47 106

问卷调查表+布局.zip

安卓小实验-【问卷调查表的实现】,其中还包括了一些布局文件,要求用到TextView,Button,CheckBox,RadioButton,EditText等控件

2020-06-02

计算机图形学-综合画线系统

计算机图形学课程最后大作业,利用MFC框架完成,基本功能有:任意斜率的单色直线绘制、渐变色画线绘制、约束画线、橡皮筋画线、反走样直线绘制。文件包括完整代码+可执行的文件

2018-09-03

空空如也

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

TA关注的人

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