自定义博客皮肤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岁就死了,一直到75岁才埋。——《活着》

  • 博客(23)
  • 资源 (6)
  • 问答 (1)
  • 收藏
  • 关注

原创 MySQL 对null 值的特殊处理

可以看下MySQL文档,其中描述了对null值的定义是,从概念上讲,表示“缺少未知值”。如下图所示,NULL作为电话号码不为人知,空字符串'' 作为这个人没有电话、没有电话号码去理解, 但是这对于我们日常的开发、理解,包括对非字符类型的默认值,都需要一个默认值的规定。对于字段来说,能Default Not Null 的尽量设置,对于可能为空的值,存在NULL值无可厚非,只是在SQL语句中要注意对null的特殊处理。自信考证NULL值存在的合理性以及使用场景。

2023-12-05 14:50:21 1087

原创 SpringBoot 注入RedisTemplat 启动报错

The injection point has the following annotations: - @org.springframework.beans.factory.annotation.Autowired(required=true)

2023-12-04 18:15:09 758 2

原创 MySQL分页排序注意事项

MySQL分页排序

2023-10-12 16:32:03 177

原创 字符串模式匹配算法(暴力破解、KMP、BM、Sunday)

目录暴力破解KMP 算法构造 next 数组KMP代码BM 算法Sunday 算法参考资料又通过leetcode复习了之前的知识:找出字符串中第一个匹配项的下标你的面前有两段序列 S 和 T,你需要判断 T 是否可以匹配成为 S 的子串。你可能会凭肉眼立即得出结论:是匹配的。可是计算机没有眼睛,只能对每个字符进行逐一比较。对于计算机来讲,首先它会从左边第一个位置开始进行逐一比较:这样,当匹配到 T 的最后一个字符时,发现不匹配,于是从 S 的第二个字符开始重新进行比较:仍然不匹配,再次将 T 与 S 的第三

2023-07-12 16:06:41 351

原创 Java JDK8以后新特性

JDK8+新特性学习

2023-04-12 14:10:06 236

原创 Java 为什么推荐用Deque实现Stack

Java推荐使用 Deque stack = new ArrayDeque() 代理Stack类实现栈结构的原因

2022-07-13 17:36:25 1562 3

原创 MySQL快速整理数据库表结构、表字段

使用SQL语句快速整理表结构字段存档

2022-04-29 11:35:40 2096

原创 MySQL 各语句执行顺序

目录语句中各子句完整执行顺序概括(按照顺序号执行):每个子句执行顺序分析语句中各子句完整执行顺序概括(按照顺序号执行):from (注:这里也包括from中的子语句) join on where group by(开始使用select中的别名,后面的语句中都可以使用) avg,sum.... 等聚合函数 having select distinct order by limit每个子句执行顺序分析所有的 查询语句都是从from开始执行的,在执行过程中,每个步骤都会为

2022-01-10 11:22:20 5107

原创 MySQL 分类排名(并列、不并列),分组TOP N,ROW_NUMBER()函数

表结构学生表如下:CREATE TABLE `t_student` ( `id` int NOT NULL AUTO_INCREMENT, `t_id` int DEFAULT NULL COMMENT '学科id', `score` int DEFAULT NULL COMMENT '分数', PRIMARY KEY (`id`));数据如下:题目一:获取每个科目下最后两名学生的成绩平均值取最后两名成绩SELECT s1.* FROM stud...

2022-01-10 11:01:19 2811

原创 从机械硬盘和固态硬盘的结构来看IO

“磁盘”这个词,对于程序员来说并不陌生,我们知道它是一种存储介质,主要用来存储数据的,可以说常用的中间件基本上都离不开它,比如我们常用的MySQL数据库、kafka消息引擎,甚至redis缓存都离不开磁盘。我们在优化某个业务逻辑的时候,经常需要用到缓存,尽量让热数据都从缓存里读取,因为我们知道磁盘是缓慢的,特别在高并发的场景下,我们要保证极少的请求走磁盘IO。不知道你有没有思考过以下问题: 机械硬盘为什么慢? 机械硬盘有多慢? kafka也是写磁盘的,它却挺快的,为什么?..

2022-01-04 14:31:23 2217 1

原创 JAVA 序列化、反序列化

一、概括Java序列化就是指把Java对象转换为字节序列的过程,Java反序列化就是指把字节序列恢复为Java对象的过程。序列化最重要的作用:在传递和保存对象时.保证对象的完整性和可传递性。对象转换为有序字节流,以便在网络上传输或者保存在本地文件中。反序列化的最重要的作用:根据字节流中保存的对象状态及描述信息,通过反序列化重建对象。总结:核心作用就是对象状态的保存和重建。(整个过程核心点就是字节流中所保存的对象状态及描述信息)...

2021-07-14 11:00:44 242

原创 Java 获取字段属性值的两种方法

目录一、需求二、方法1.Java反射2.转Json/Map get属性值三、取舍一、需求数百万数据(类Student),根据一定的标准计算成绩,其中标准动态变化,标准数量不固定,标准规则不固定,需要根据现有的标准计算,遂想到在每条标准添加对应Student类属性值,遍历现在的标准“动态”去取Student类的值。二、方法1.Java反射传入参数名,获取对应Object,然后根据对应标准把Object转成对应类型(使用策略模式具体算成绩)。publ...

2021-07-08 18:39:51 3190

原创 短路逻辑运算符和非短路逻辑运算符

没想到毕业工作后还会有随堂测试[旺财],有题如下:根据下面的代码:String s = null;会抛出NullPointerException异常的有()。if( (s!=null) & (s.length()>0) ) if( (s!=null) && (s.length()>0) ) if( (s==null) | (s.length()==0) ) if( (s==null) || (s.length()==0) )答案为 AC

2021-01-25 23:34:12 814 4

原创 Windows10 MySQL 5.7.32 安装

目录1.安装包下载2.文件、路径、参数配置3.配置环境变量4.运行MySQL1.安装包下载有梯子可以去官网下-->MySQL Community Server(存档版本)建议用mysql镜像 -->清华大学MySQL5.7镜像我用的是 mysql-5.7.32-winx64.zip2.文件、路径、参数配置解压 ,创建 data空文件夹 和 my-default.ini 文件(老版本可能是my.ini)my-default.ini 文...

2021-01-09 23:26:50 956

原创 Java 参数传递,值传递、地址传递

前两天一道题,看排名第一的题解把我难到了,当时百度好久没找到问题原因。今天正好周末解决下遗留问题。

2020-12-28 17:11:00 1206 4

原创 Java static关键字 学习笔记

目录static 关键字静态变量 与 非静态变量 静态方法 static 特点Java 类执行顺序面试题参考资料static 关键字static关键字主要用来用于修饰成员(包括成员变量和成员函数),被static修饰的成员被所有的类对象所共享。Java是面向对象的语言,正常情况下只有用new实例化对象时才会正式生产数据存储空间,并可使用相应的方法。但对于static(静态)关键字来说是特殊的,一旦将成员变量、成员函数设为 static 后,我们就可以...

2020-12-26 14:02:03 220 1

原创 LeetCode 389. Find the Difference(找不同)

目录题目地址原题目方法一 计数遍历方法二 位运算-异或题目地址389. Find the Difference原题目方法一 计数遍历看到题目首先想到了使用HashMap,key存放字符,value存放出现次数。不过一看“只包含小写字母”,发觉只使用char[26]即可。class Solution { public char findTheDifference(String s, String t) { int[] ret = ne...

2020-12-18 20:03:57 201

原创 数据库——触发器基础知识

1 触发器的定义触发器(TRIGGER)是和表关联的特殊的存储过程,当数据库系统执行INSERT、UPDATE和DELETE事件时,会激活使其执行相应的操作。2 创建触发器2.1 触发器中的 new和 old在MySQL中用old和new表示触发器执行前和执行后的数据。new在before触发器中赋值,取值;在after触发器中取值。在after的触发器中,new的赋值已...

2020-03-19 18:07:53 1490

原创 LeetCode 260. Single Number III (只出现一次的数字 III)

目录题目地址原题目方法一 遍历数组解题过程代码实现复杂度分析方法二 位运算解题过程代码实现复杂度分析方法三 哈希表题目地址260. Single Number III原题目方法一 遍历数组看到 Single Number III,首先想到了之前做过的Single Number,知道用位运算应该会更好的解决问题,可惜...

2020-02-12 23:42:23 268

原创 LeetCode 190. Reverse Bits(颠倒二进制位)

题目地址:190. 颠倒二进制位原题目:颠倒给定的 32 位无符号整数的二进制位。示例 1:输入: 00000010100101000001111010011100输出: 00111001011110000010100101000000解释: 输入的二进制串 00000010100101000001111010011100 表示无符号整数 43261596, ...

2020-01-17 17:49:57 1530

原创 LeetCode 136. Single Number (只出现一次的数字)

题目地址:136. Single Number原题目:本菜鸡的想法:先给数组排序,使得两个相同的数挨在一起 防止数组越界,从0到nums.length-2遍历数组找不相同的相邻两个数,较小的那个即是Single Number 找不到则说明最后一个数字是 Single Numberpublic int singleNumber(int[] nums) { ...

2020-01-08 16:43:13 229

原创 奇偶判断

刷LeeCode看到评论区有人回复奇偶判断s.length()&1仔细思考我终于懂了,把数字以二进制的形式展示后,只需要判断最后一个二进制位是 1 还是 0 。如果是 1 的话,代表是奇数,如果是 0 则代表是偶数,以11为例:奇偶判断代码如下: public void judge(int i){ if ((i&1)==1)...

2019-12-31 18:51:41 1422 1

原创 类似xshell的ssh工具 FinalShell

刚弄了个腾讯云,本地连接用,摸索中。官网:  http://www.hostbuf.com/下载地址:  http://www.hostbuf.com/downloads/finalshell_install.exe

2018-06-05 09:37:23 7177 1

07基于支付系统场景的微服务架构的分布式事务解决方案 微服务源码文档

07基于支付系统场景的微服务架构的分布式事务解决方案 微服务源码文档

2018-04-23

03Spring Cloud项目实战微服务整合spring boot视频教程课件

03Spring Cloud项目实战微服务整合spring boot视频教程课件

2018-04-23

设计模式综合项目实战X-Gen生成器 PPT

设计模式综合项目实战X-Gen生成器 PPT

2018-04-23

php典型模块与项目实战大全-明日科技 11-15章代码+其他内容

php典型模块与项目实战大全-明日科技 11-15章代码+其他内容,从光盘拷贝。

2017-01-11

java语言程序设计基础篇(英文8版)课后习题答案1-6章.txt

java语言程序设计基础篇(英文8版)课后习题答案1-6章

2015-10-28

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

TA关注的人

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