自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mybatis写入字符串过长抛出 Data truncation: Data too long for column ‘xxxx‘

控制存储引擎替换行为,确保指定存储引擎不可用时抛出错误。:禁用 JDBC 规范中规定的数据截断异常,允许数据被截断插入。这两项设置改变了数据库和应用程序如何处理存储引擎替换和数据截断异常,允许更灵活的错误处理。

2024-09-25 17:43:29 262

原创 Java17-Sealed Classes(密封类)

乘积类型:多个字段的组合,表示的是“并存的多个属性”。求和类型:多个可能的类型选择,表示的是“互斥的可能性”。这两者的组合可以帮助设计清晰且结构化的数据模型,使程序的逻辑和数据表示更具可读性和安全性。Sealed类提供了一种更细粒度的控制机制,允许开发者限制继承的范围,从而实现更安全、更明确的类层次设计。安全性提升:通过对继承进行控制,Sealed类提高了系统的安全性,减少了意外扩展和子类滥用。简化代码:通过限定子类,Sealed类可以让编译器更好地处理模式匹配、类型推断等操作,简化代码逻辑。

2024-09-24 15:05:34 1135

原创 Netty网络编程

在本章中,我们快速浏览了Netty,并演示了如何使用Netty编写一个完全可用的网络应用程序。在接下来的章节中会有更多关于Netty的详细信息。我们还鼓励您查看包中的Netty示例。本文章是为学习Netty网络编程所写,根据项目需求会时不时更新。参考Netty官方手册。

2024-09-19 16:40:22 1049

原创 Java22-匿名变量/模式(Unnamed Variables & Patterns)

每个通过语句声明的和final字段在访问其值时都必须具有。包括变量的简单名称(或者,对于字段,由限定的字段的简单名称)出现在表达式中的任何位置,除了作为简单赋值运算符,this的左边操作数 "=".如果右侧操作数的类型与变量的类型不兼容,则会发生编译时错误。否则,在运行时,将按以下三种方式之一评估表达式。概括。

2024-09-17 16:34:47 757

原创 SpringSecurity如何正确的设置白名单

在SpringSecurity中,往往需要对部分接口白名单访问,而大部分在使用Security中就有一个误区,那就是免鉴权访问和白名单的区别。大部分的Security文章包括官方文档给出免鉴权访问都是使用去对相应路径进行免鉴权访问,但实际上这仅仅只表示该资源不需要相应的权限访问,但是用户还需要认证.也就是Securityd的认证/授权两个概念.

2024-07-23 15:23:14 704

原创 SpringDoc2问题汇总

当我调用 /v3/api-docs接口时,Swagger显示如下:这段话一开始令我费解,因为依赖包中的版本都是对应的,通过各种问题查询我意识到这应该是Swagger未接收到返回数据,无法展示API界面,后来看到一篇解决文章,然后自己去调试解决了问题,问题文章在此,有兴趣的可以看下问题文章。这个问题挺有意思的,我来进行更详细的分析和解决方案.原因就是调换了MVC原始的报文解析顺序,导致SpringDoc返回的byte[]被Jackson2报文解析器将其解析成了Base64,然后swagger无法解析。

2024-07-19 10:14:04 777

原创 阿里云RDS云数据库库表恢复操作

所以恢复数据从被删除时间点6-21 15:30 ~ 6-27 9:00,当然如果在需恢复时间点并没有备份,则只能寻找最近的备份点恢复了,如果无法接受数据的部分丢失,我认为需要去通过undo日志来进行恢复,但是阿里云不是自己服务器大部分都是收费功能,所以仁者见仁智者见智了.2.进入实例后 ,点击右侧的备份恢复,然后看一下备份时间点,中间这边都是阿里云自动备份的备份集,基本都是7天一备份,保留7天(可以延长但要加钱)可以在阿里云的监控与报警中查看近7天的磁盘使用情况,可以知晓数据被删除的大致时间。

2024-07-05 17:14:32 563

原创 Git新仓库创建流程

平时需要创建新仓库,老要去查代码特别烦,在此写下流程方便备用.

2024-07-02 14:22:06 363

原创 Centos9 安装VBox增强功能问题

首先手动更新gcc,防止无法兼容最新版本的内核,我这里将gcc 11更新到gcc 13。

2024-06-21 14:45:38 1162

原创 Mybatis分页查询,同时返回total

在垃圾项目中一般都是使用mybatis plus自动返回Page,但是涉及到多表联合或者等等情况最终还是要使用mybatis进行手写sql查询,所以有此文章以便后续使用查询.至此可实现mybatis plus的Page查询,mysql中执行查询total并不会再次查询,而是获取到对应的分页查询到数据的结果.Mapper查询数据的返回值用Object接收。mapper xml语句。

2024-06-20 16:17:44 854 5

原创 谷歌QR生成

第一次单独打包一个main为文件,还挺折腾的,但是现在好了。

2024-06-18 10:22:41 176

原创 react使用谷歌人机验证

在项目中,需要对请求验证,防止被爆破,这里使用的是谷歌的recaptcha-v3。

2024-05-03 20:20:47 1516

原创 Js简单学习

react学习中,js基础部分快速学习

2024-04-26 11:31:05 292

原创 SpringSecurity request过滤问题

这里写的就有问题,好久没搞,bean命名还以为是路径映射了,请求的就是/user/register,然后在security中把这个请求路径给免授权了,结果访问的时候就被未授权处理器抛出了未授权的信息,看的我一头雾水.然后跟着一步步调试,发现在DispatcherServlet 处理请求时并没找到handler,同时modeAndView也为null然后进入报错,被SecurityContext中的处理器给捕获然后从这抛出了异常。使用RequestMapping来添加映射,不知道有没有更加好用的方式。

2024-02-20 11:43:20 430 1

原创 Qt学习(2)

QWidget是用户界面的原子类。它接收鼠标、键盘和来自系统的其他事件,并在屏幕上将它们绘制出来。每个Widget都是矩形的,并按照Z-order(Z轴)进行排序。一个Widget夹在它的Parent和它前面的Widget之间。没有嵌入parent widget中的Widget称为Window。通常情况下,Windows有一个Frame和标题栏(当然也可以通过window flags来取消这些项)。Qt中,QMainWindow和QDialog的多种多样的子类是最常见的Window类型.

2023-11-24 20:29:50 1037

原创 Qt框架学习(1)

可以在帮助中使用查找,寻找需要的包文件, 然后导入到CMakeLists中,将find_package部分放入对应位置,target_link_libraries放入对应位置。CMakeLists.txt:这个文件相当于Java中的pom文件,用于管理项目的库和文件的。Source Files:里面放的都是源文件。Hander Files:里面放的都是头文件。4.导入需要的Qt模块。

2023-11-23 11:12:27 477

原创 C++中类和动态内存分配

在C++中,内存分为栈和堆。栈中的对象生命周期较短,往往在作用域结束后就会销毁,而堆中的对象生命周期较长,只有当使用delete或者程序结束时才会销毁。而new则是将我们创建的对象分配到堆中,使对象可以跨作用域使用。

2023-11-21 10:17:46 102

原创 C++对象和类

1.cpp中对象默认访问权限都是private的2.私有成员只能通过公有函数访问使用3.类方法名称需包含类名,为函数的限定名在头文件中定义类,同时将公有方法原型声明(类似Java接口道理).在同名源文件中实现公有函数定义.在其他源文件中使用类和类方法.小细节:1.如果是短小的成员函数,将被作为内联函数。2.两个不同的对象,类成员和变量都是自己的,但是共享同一组类方法。3.如果拥有有参构造器,必须声明无参构造器原型,通常应提供对类成员隐式初始化的默认构造函数。

2023-11-01 13:42:14 125

原创 C++名称空间

至此我们可以有一个初步对头文件和命名空间的认识了,我们将在头文件中定义命名空间,声明对应空间中的变量信息,同时可以定义函数原型(类似于接口),然后通过同名源文件去实现命名空间中的函数定义,或者定义外部变量,最后在main文件中引入头文件,使用using声明或者using namespace编译命令来使用该命名空间中声明的变量和函数。1.声明区域:声明区域是指可以在其中声明的区域,例如可以在函数外部声明全局变量(区域为所在的文件),在函数块内声明局部变量(区域为所在的块),其声明区域就为其声明位置。

2023-10-30 10:51:31 98

原创 C++头文件定义变量

1.在进行头文件学习时,犯了不少错误,记录一下,先贴代码..h头文件#ifndef MY_FIRST_H_#define MY_FIRST_H_struct Person{ std::string name; int age; char8_t gender;};//需要使用extern来声明,否则在多个文件中引入该头文件会出现重定义错误extern int x;extern int y;void kickUser(int x);void lookLookMe(int y

2023-10-29 10:07:37 1180

原创 3.流的输入/输出

这里cout是一个输出流的对象(工具),Cpp中引入的iosteam头文件并不包含该函数的原型,而是将其原型放入到了一个叫std的空间中,std中包含了很多头文件中的对象原型,而如果要使用其中的对象原型和其函数就必须声明,最简单的就是上面一种方法.endl:输出流有一个输出槽,里面存放的待输出的数据,而当我们使用endl的时候就会将输出槽中的所有数据发送到设备(控制台),这就是清槽,然后会换行.\n:它是一个转义字符,当被输出时会被转换成\xxxx,然后被一起放入到输出槽中,等待输出.

2023-10-06 19:25:56 90

原创 2.基本数据类型

/#定义 标识符 内容return;#define预处理,可以定义一个,会在程序中所有NUM替换为100,不同于const常量,define其实本质上对文本内容的替换。define和const的区别define是宏定义,程序在预处理阶段将用define定义的内容进行了 替换。因此在程序运行时,常量表中并没有用define定义的常量,系统不为它分配内存。而const定义的常量,在程序运行时,存在常量表中,且系统为它分配内存。

2023-09-28 09:14:08 76

原创 1.在vsCode上创建Hello,World

学习C的第一天,完成了编译环境的配置,成功运行了Hello,World

2023-09-26 20:02:57 657

原创 List的学习笔记

List中主要有ArrayListLinkedList两个实现类,在Collection中,List集合是有序的,可对其中每个元素的插入位置进行精确地控制,可以通过索引来访问元素,遍历元素。

2023-09-23 21:54:47 64

原创 MyBatis递归查询学习

上面都不符合要求,那就自己写吧,自己写了一套递归,但是又感觉不合适,因为如果要在程序中进行递归查询必须要读取数据库中所有用户数据到服务器中,如果数据量大的话服务器就崩了(而且我就是个后台程序啊!我们的这个需求符合树形结构,所以树状查询才符合业务要求(之前找到过一篇自己写的树状结构工具的文章找不到了,写的挺好的可惜的是他是查询父级和下面子集的,不符合业务要求),我们需要的是向下树状查找.这样就也是使用递归进行查询了,以前也没用过mybatis递归查询过,一条sql有时候确实感觉挺爽的,所以深入学习一下.

2023-09-22 20:28:52 1003

原创 外部扫码跳转到微信小程序

微信扫码外部跳转到小程序

2023-09-22 00:09:59 503

原创 idea项目合并问题

一个小问题的记录

2023-08-28 19:25:21 152

原创 mybatis多级配置xml问题

遇见的问题

2023-08-21 16:21:36 108

原创 Uniapp问题汇总

uniapp使用中遇到的一些问题记录

2023-08-18 16:18:39 815

原创 Mybatis的延迟加载

2023/8/13 mybatis懒加载学习,介绍了使用情景和用法。

2023-08-13 19:36:37 271

原创 SpringBoot激活配置文件切换

SpringBoot激活文件切换

2022-06-03 17:37:57 1944

原创 Canal启动和运行出现的问题

canal启动出现的问题

2022-06-03 17:08:39 2362 2

原创 MySql开启binlog

学习canal时候用到的mysql的binlog

2022-06-03 16:22:54 1273

原创 SpringBoot项目创建jar包

SpringBoot中开发,我们的maven依赖的都是jar包,而Java不支持加载嵌套jar包,这时候就要使用Springboot的功能,可以让我们嵌套使用jar包。在maven中添加如下的依赖:<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId&

2022-05-21 07:23:50 585

原创 关于Security oauth2 +Sso整合出现的问题

当搭建好security授权服务器,资源服务器,和单点登录客户端的时候,挺开心的,基本上都是使用注解写的,也没啥多大的变动.但是在我使用ResponseBodyAdvice包装类统一返回响应请求的时候,问题就来了,再进行统一包装的时候也会将通过授权后返回的token信息进行包装,可是当客户端对返回的response进行解析的时候死活解析不出来,会把返回的信息全部放入到增强内容additionallnformation当中这就令我很苦恼,也算没吃透security就开始写带来的问题,找了很多方法,

2022-05-09 10:17:57 803

原创 Nginx学习笔记

目录一 基本概念1. 什么是 nginx 和可以做什么事情2.Nginx 作为 web 服务器3. 正向代理4. 反向代理5. 负载均衡6.动静分离二 Ubuntu安装Nginx三 Nginx的信号控制四 Nginx的配置文件第一部分:全局块第二部分:events块第三部分:一 基本概念1. 什么是 nginx 和可以做什么事情Nginx 是高性能的 HTTP 和反向代理的web服务器,处理高并发能力是十分强大的,能经受高负 载的考.

2022-04-27 15:58:40 3289 1

原创 Linux学习笔记

目录Centos与UnbuntuShell脚本中的if注意事项Shell中关于命令执行返回值Centos与Unbuntu1.在使用中碰见大大小小的问题,记录一下,首先Centos和Unbuntu不一样!!!Centos用的是yum安装更新软件,而Unbuntu用的是apt-get,在这个上面我花费的大量的时间去安装yum,而且一直版本不兼容。Shell脚本中的if注意事项首先,if功能还是一样的,但是要注意格式,if和中括号要一个空格,中括号跟表达式之间前后各一个

2022-04-27 08:37:41 1096

原创 Zookeeper学习笔记

目录1.基本概念2.Zookeeper常用命令3.Zookeeper的数据结构保存数据组成部分zk中节点znode的类型Zk的数据持久化4.Zookeeper客户端(zkCli)的使用节点操作Stat结构体(数据元数据)权限设置5.Curator客户端使用(Java使用客户端)Curator CURD API:6.Zookeeper分布式锁1)zk如何上读锁2)zk如何上写锁3)watch机制Curator客户端使用watchC..

2022-04-19 16:09:40 2025

原创 Spring Security Oauth2架构学习

目录1.基本概念2.授权码模式3.密码模式4.JWT加密令牌5.SpringSecurityOauth2整合JWT刷新令牌1.基本概念简介,Oauth协议为用户资源的授权提供了一个安全的,开放而又简易的标准,同时,任何第三方都可以使用Oauth认证服务,目前Oauth是2.0版本使用最为广泛.分析一下网站使用vx认证的过程:1.首先用户想访问资源,需要认证,使用第三方认证比如(vx,qq,新浪等等)2.用户确认使用第三方认证,那么需要向对应的第三方

2022-04-16 22:00:18 3539 4

原创 SpringCloudConfing异常

在自己学习的过程中碰见很多问题,在这写下来总结,后续碰到会更新.1.版本问题使用的是SpringCloud 2020.0.1版本,依赖SpringCloudConfig死活依赖不上就改用 <!--springcloud config客户端--> <dependency> <groupId>org.springframework.cloud</groupId> <artif

2022-04-15 10:40:22 455

空空如也

空空如也

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

TA关注的人

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