自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

柏拉图的IT爬坑旅程

分享些自己平时的笔记

  • 博客(30)
  • 收藏
  • 关注

原创 MySQL排查问题row size too large (> 8126). Changing some columns to TEXT or BLOB may help.

字节,那么根据文档描述的话,使用dynamic行格式的表行最大大小可以达到65536字节(因为mysql内部使用了2个字节来表示字段长度,因此可以表示最大65535的长度)看了一些博客修改varchar为text并不能解决,需要修改mysql的配置文件,并且重启。计算:bigint 8 byte。单行记录的合计最大大小超过了。

2023-02-02 23:17:32 5386

原创 Java语法糖

语法糖(Syntactic Sugar),也称糖衣语法,是由英国计算机学家 Peter.J.Landin(彼得·兰丁) 发明的一个术语,指在计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用,当然也仅仅是方便程序员的使用,因为java虚拟机并不支持语法糖,因此在语法糖在编译阶段就被还原成简单的基础语法结构。

2023-01-30 23:55:51 436

原创 @autowired和@resource的区别

AutoWired注解是根据类型进行匹配的,而@Resource这个注解可以根据name和type进行匹配,默认是name匹配。@AutoWired注解是spring框架定义的注解,而@Resource注解是jsr 250规范里面定义的注解,只是spring对jsr 250规范提供了支持而已。@AutoWired注解如果要根据name匹配,就需要配合@Primary注解或者@Qualifier注解来实现支持。

2023-01-30 23:40:12 360

原创 Java对象分配过程以及面试题

JVM一定是在堆上为对象分配的内存吗?

2023-01-30 21:18:42 213

原创 对象在Eden区分配

Eden与Survivor区默认8:1:1,大量的对象被分配在eden区,eden区满了后会触发minor gc,可能会有99%以上的对象成为垃圾被回收掉,剩余存活的对象会被挪到为空的那块survivor区,下一次eden区满了后又会触发minor gc,把eden区和survivor区垃圾对象回收把剩余存活的对象一次性挪动到另外一块为空的survivor区,因为新生代的对象都是朝生夕死的,存活时间很短,所以JVM默认的8:1:1的比例是很合适的,对象动态年龄判断机制一般是在minor gc之后出发的。

2023-01-30 21:05:50 716

原创 MySQL基础

MySQL基础知识,DDL、DML、DQL

2022-11-24 23:26:06 2825

原创 MySQL锁分类

有没有觉得MySQL里面的锁有很多?比如排它锁、共享锁、意向锁、插入意向锁、间隙锁、临界锁、记录锁、全局锁锁、表所、页锁以及行销等。其实,这么多锁存在相互包含的情况,他们是数据库锁不同分类标准导致的。锁最终是加在索引上的。

2022-11-20 20:03:56 4509 1

原创 Java Throwable及其实现类

NullPointerException:要访问的变量没有引用任何对象时,抛出该 异常。ArithmeticException:算术运算异常,一个整数除以0时,抛出该异常。ArrayIndexOutOfBoundsException:数组下标越界异常,调用索引值超出被调用数组索引界限,抛出该异常。MissingResourceException:资源绑定异常,资源不存在或路径不对导致系统未识别到绑定资源,抛出该异常。

2022-09-23 23:22:42 1665

原创 lombok.Builder @Builder 编译Error:(xx,xx)java: 找不到符号cannot find symbol class Builder

在日常的软件开发工作中,建造者模式(或创建者模式)是很实用的一种设计模式,用于很方便地创建一个对象,减少写get、set、无参构造器等方法的时间,特别是在类的成员比较多的情况,大大减少了代码的篇幅(一大堆的get、set方法有多长)。通过 lombok包里面的@Builder注解,我们可以很简单的实现一个类的get、set等方法。但可惜在实际使用时,如果类的内部还有一个静态内部类时,编译时可能会出现Error:(xx,xx)java: 找不到符号问题(这和代码里面外部类和内部类使用顺序有关。

2022-09-03 23:51:51 3627

原创 Supplier接口

目录一、Supplier接口源码二、Supplier示例三、其他Supplier接口一、Supplier接口源码public interface Supplier<T> { /** * Gets a result. * * @return a result */ T get();}Supplier接口是一个供给型的接口,本质就是一个容器,可以用来存储数据(或者是产生数据的规则),然后可以供其...

2022-05-29 00:43:00 2264

原创 Consumer<T>和BiConsumer<T,U>

前言 java sdk package: package java.util.function;一 Consumer<T>1.1 源码注释翻译过来大致为:这个Consumer<T>接口表示(或者定义)了对输入参数的一系列处理规则,这个操作需要有一个输入参数,就是一个没有返回值的匿名函数。/** * Represents an operation that accepts a single input argument and ...

2022-05-28 23:46:08 445

原创 Java 对象比较equals方法和“==“

一、equals方法和"=="的区别1.1 "=="比较如果是基本数据类型,则 == 比较的是值;如果是对象类型,则 == 比较的是对象的地址。 注意:指向字符串常量池里面的字符串引用,使用"=="进行比较,结果为true;https://www.jb51.net/article/224268.htmhttps://www.jb51.net/article/224268.htm1.2 equals方法1.2.1 不重写eqlu...

2022-05-28 16:03:31 493

原创 ArrayList源码

JDK8 ArrayList源码学习

2022-05-22 00:09:37 347 1

原创 扩展切比雪夫多项式(混沌映射, Chebyshev chaotic map)

切比雪夫多项式也叫切比雪夫混沌映射,起源于多倍角的余弦函数和正弦函数的展开式,是计算数学中一类特殊的函数。扩展切比雪夫多项式(Extended Chebyshev Polynomials, ECP),也有叫作扩展切比雪夫混沌映射(Extended Chebyshev chaotic map),是切比雪夫多项式(混沌映射)参数x在上的扩展。切比雪夫多项式定义:设n,x为变量且满足,n阶切比雪夫多项式的余弦式定义为:。当时,等价的递归迭代定义为:,其中。切...

2021-08-07 23:33:52 5002 3

原创 椭圆曲线加密(Elliptic Curve Cryptography, ECC)

近年来,国内外的科研人员面向设备资源受到限制的多种场景提出了很多基于ECC的认证密钥协商协议。虽然各协议应用场景不尽相同,但解决的问题和最终的目标都较为类似,可以归纳为在性能开销尽可能小的前提下,安全地实现双方的身份认证和密钥协商。2015年Tsai等人在智能电网场景中提出了一种基于ECC双线性配对的匿名认证密钥协商协议,能够保障用户或设备隐私信息以及敏感数据的安全传输,但是该协议不具备消息完整性,而且涉及双线性配对运算导致计算开销较大[77][78]。2016年He等人...

2021-07-31 00:42:53 1543

原创 量子保密通信技术基本原理

1.海森堡测不准原理你不可能同时知道一个粒子的位置和它的速度,粒子位置的不确定性,必然大于或等于普朗克常数(Planck constant)除以4π(ΔxΔp≥h/4π),这表明微观世界的粒子行为与宏观物质很不一样。在量子力学里,不确定性原理(Uncertainty principle)表明,粒子的位置与动量不可同时被确定,位置的不确定性与动量的不确定性遵守不等式2.量子不可克隆原理即不可能构造一个能够完全复制任意量子比特,而不对原始量子位元产生干扰的系统。某个任意的量子态是不能够百分百精确地复制

2021-01-20 11:28:21 2561 1

原创 Redis基础知识

整合多篇博客,为了面试而生! 奥利给~~~redis是单线程持久化方式两种:RDB AOFRDB:是一次内存数据的全量备份,周期性的将当前内存数据写入到一个快照文件中。redis使用操作系统的多进程COW机制(Copy On Write)机制来实现快照的持久化,在持久化过程中调用 glibc(Linux下的C函数库) 的函数fork()产生一个子进程,快照持久化完全交给子进程来...

2020-04-22 23:23:19 146

原创 为什么MySQL数据库用B+树,MongoDB用B树

数据结构:B树是所有节点上都有数据,单条查询的效率不稳定,最好就是情况可以直接找到,但最差情况需要一直找到叶子节点,叶子节点之间没有用指针连接。B+树 所有的数据都存放在叶子节点上,非叶节点只起到索引的作用,单条查询效率稳定,查询任何信息都需要查找到叶子节点为止,叶子节点之间通过双向指针连接,可以通过这些指针有序的遍历数据。因此,B树单条查询的平均效率比B+树好,遍历数据B+树比B树好。M...

2020-03-25 11:50:44 465

原创 HashMap1.8源码关键代码解析--行级注解持续更新

HashMap 1.8 源码变量参数://默认初始化容量大小16static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16//最大容量2^30次方,static final int MAXIMUM_CAPACITY = 1 << 30;//负载因子static final float DEFAUL...

2020-03-02 17:26:05 146

原创 学习过程中觉得写得好的博客记录

js正则表达式https://www.cnblogs.com/raphael1982/p/8012634.html

2019-12-12 11:26:22 473

原创 mybatis注解开发

1.数据库表2.mybatisSQL注解@Select注解是mybatis查询操作的注解,里面写sql语句@Results和@Result是用于结果映射的,比如列名和javabean里面的属性不对应时使用,同时也可以让不想让人查询的属性隐藏起来。column:写数据库表的列名property:写对应javabean的属性3.测试@Select("select * from use...

2019-09-05 17:11:23 340

原创 SpringBootWhitelabel Error Page This application has no explicit mapping for /error, so you are seei

问题提示Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.这是spring提示你找不到对应符合的映射。首先你先确保前端url地址是不是写对,再看看后端controller层的映射RequestMapping是不是写对,...

2019-07-30 10:25:34 7818

原创 Shiro与Spring结合时报Configuration error: No realms have been configured! One or more realms must be……

最近在跟着网上的教学视频学习Shiro安全框架,使用Shiro可以方便的做验证、授权等,其中在谈到使用多realm做验证,授权时,报了个缺少realm配置的错误。Configuration error: No realms have been configured! One or more realms must be present to execute an authorization o...

2019-07-23 15:42:29 2484 3

原创 SprinBoot操作MongoDB数据库

一、创建SpringBoot工程这个不用多提……二、导入jar包pom.xml文件: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb&lt...

2019-07-04 17:51:15 543

原创 开源日志框架有哪些(科普)

1.JDK LoggerJDK从1.4版本开始自带的一套日志系统JDK Logger,最大优点就是不需要集成任何类库,只需要JVM的运行环境,就可以直接使用。日志级别分为九个:all、finest、finer、config、info、warning、severe、off,级别依次升高,这里和主流的开源日志框架命名不同,例如:主流日志框架的错误日志使用error命名,而这里使用severe命名。...

2019-05-13 16:16:23 1451

原创 Maven的环境变量配置

一、解压官网下载的maven压缩包二、配置maven的环境变量1.找到配置环境变量的地方2.新建MAVEN_HOME值为maven解压包的位置3.添加Path%MAVEN%\bin3.测试控制台输入:mvn-version...

2019-04-28 20:56:27 121

原创 JDK安装和环境变量的配置

一、JDK的安装1.官网下载安装包2.开始安装二、环境变量的配置1.找到计算机配置环境变量的地方此电脑->右击->属性2.添加JAVA_HOME3.在Path中添加%JAVA_HOME%/bin4.测试...

2019-04-28 20:25:44 87

原创 git常用命令自我总结

gitgit是一个集中式的版本控制软件,类似的版本控制软件还有很多,比如svn等。git命令最开始是拉取国外的仓库github,但由于国内上外网有点毛病,于是有了国内的gitee(码云),其实就是中文版的github,git命令可以无条件通用。一、安装git百度git官网直接下载安装,没啥好说的。二、在本地文件初始化git仓库1.新建文件夹(用于拉取远程项目)2.初始化右键-&g...

2019-04-28 17:49:28 150

原创 fastJSON的入门级使用

一、FastJson的用法将符合json格式的字符串转换为json对象或者是json数组二、测试用例需要的jar包import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;1.JSON.parseObject(String...

2019-04-26 15:21:02 789

原创 SpringBoot下使用mybatis的逆向工程

小白级别、超详细的在springboot项目中使用mybatis的逆向工程图文解析一、创建SpringBoot项目SpringBoot版本:1.5.20.RELEASE使用IDEA编译器软件,直接创建新的SpringBoot项目二、在MySQL数据库中创建一张表我这里使用Navicat可视化工具连接mysql进行操作:创建person表,属性:id(主键),name,age...

2019-04-25 19:15:29 1353 2

空空如也

空空如也

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

TA关注的人

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