- 博客(409)
- 资源 (33)
- 问答 (7)
- 收藏
- 关注
原创 MySQL in和exists的取舍
in的参数是子查询时,会将子查询结果存储在一张临时的表中(内联视图),然后扫描整个视图。之前说过要小表驱动大表,即先遍历小表再遍历大表,接下来看一下in和exists的区别。将主查询数据放到子查询中做验证,根据验证结果来确定主查询结果的去留。根据执行顺序也就得知了什么时候该用in什么时候该用exists了。以外层表作为驱动表,外层表先被访问,适合于外表大而内表小的情况。先执行子查询,适合于外表大而内表小的情况。使用exists数据库不会生成临时的表。in和exists的取舍。
2025-03-31 11:38:02
509
1
原创 MySQL的数据文件
mysql的数据都存放在datadir所指的位置,其中包含了mysql中创建的数据库,数据库中包含了表结构(frm文件)、表数据(myd文件)、表索引(myi文件).ibd和.ibdata 用于存储innodb存储引擎的表数据和索引信息。.myi 存储使用myisam存储引擎的表数据文件中任何索引的数据树。.frm 存放和表相关的数据信息,主要包括表结构的定义信息。.myd 存储myisam存储引擎的表数据信息。MySQL的数据文件。
2025-03-24 10:33:51
556
原创 与普通日期格式化对比,FastDateFormat 为何能线程安全?
将格式化格式、时区和国际化作为一个key存在了cInstanceCache中,cInstanceCache是一个ConcurrentHashMap,相当于相同的格式化格式、时区和国际化会使用同一个FastDateFormat实例。那么FastDateFormat为什么是线程安全的呢?首先FastDateFormat是有一个缓存的,在进行实例化的时候是通过cache缓存来获取实例的。而在使用FastDateFormat进行格式化的时候,是在方法中定义的Calendar局部变量,是不会出现线程安全问题的。
2025-03-24 10:27:09
484
原创 MySQL如何存储表情符号?
MySQL中的utf8其实是utf8mb3,最多只用3个字节存储字符,存储不了表情。如果要支持表情,需要使用完整的utf8字符集utf8mb4,可用4个字节来存储。默认mysql的字符集是utf8,排序规则为 utf8_general_ci。utf8和utf8mb4的区别。在存储表情的时候会报。
2025-03-18 11:41:44
1365
原创 困扰无数人的 POI 读取合并单元格内容难题,终于有解了
产品们想到的excel真是千奇百怪,这次又遇到一个读取包含合并单元格的excel文件,一开始直接读取,直接报空了,没办法,只能对于这些列进行判断是否为合并单元格。如果是合并单元格的话,使用单独的方法来进行读取。POI读取合并单元格内容。
2025-03-18 11:38:19
497
原创 连接数问题
在使用mysql时有时候会报too many connections错误,这是连接数过多导致的,然后就会去修改max_connections参数,但是这个参数也不能无上限的增大,容易造成机器内存不足,还是需要找到为什么会有这么多连接的原因。
2025-03-11 10:46:56
408
原创 Excel 后缀竟成 “拦路虎”?POI 读取报错原因大揭秘
由于有时候上传的是xls文件有时候上传的是xlsx文件,使用POIFSFileSystem来读取文件。使用WorkbookFactory来读取excel文件。POI读取excel报错。
2025-03-11 10:42:54
290
原创 MySQL忽略大小写问题
然后查了一下资料,说是utf8_general_ci中的_ci是指忽略大小写Case-insensitive,但是我只设置了字符编码utf8,没有设置为utf8_general_ci呀,原来utf8默认的是就是utf8_general_ci。今天使用MySQL查询时遇到一个问题,使用一个字符串去查询时,查出来两条数据,但是查到的数据大小写并不一样。果然是utf8_general_ci,好吧,那么如何修改呢?我查到了name为a和A的两条数据,这就很奇怪,难道mysql会忽略大小写吗?
2025-03-04 15:28:51
704
原创 Excel 图片插入难题?POI 三招轻松化解
使用HSSFPatriarch来将图片写入EXCEL中。注:在将图片添加到工作簿中时,必须将其存储为字节数组。POI操作EXCEL插入图片。
2025-03-04 15:26:45
514
原创 MySQL自动备份脚本
mysqldump命令将数据库中的数据备份成一个文本文件,表的结构和数据将存储在生成的文本文件中。将备份出来的数据还原到某个数据库中。备份一个数据库下的多个表。MySQL自动备份脚本。也可以登入数据之后进行。
2025-02-24 15:20:05
1040
原创 MySQL配置文件读取顺序
在启动MySQL数据库时可以没有配置文件,这种情况下,MySQL会按照编译时的默认参数设置启动实例。按照顺序读取配置文件,且如果多个配置文件中有相同的参数,则以读取到的最后一个配置文件为准。
2025-02-18 10:41:43
565
原创 别再瞎摸索!POI 操作 Excel 轻松添加下拉框
有时候通过excel将数据批量导入到系统,而业务操作人员对于一些列不想手动输入,而是采用下拉框的方式来进行选择。可以在EXCEL中的数据有效性看到数据来源。采用隐藏sheet页的方式来进行操作。
2025-02-18 10:39:53
270
原创 MySQL使用count进行行数统计
https://zhhll.icu/2021/数据库/关系型数据库/MySQL/基础/20.MySQL count/](https://zhhll.icu/2021/数据库/关系型数据库/MySQL/基础/20.MySQL count/)在使用count进行数据统计行数时,有时候会使用count(*),有时候会使用count(1),有时候会使用count(列名),那么这些有什么不同呢。当使用列名作为参数时,count函数会自动忽略null值,而使用*或者常量时,就会包含null值。
2025-02-07 14:36:19
456
原创 lombok常用注解
NoArgsConstructor, @RequiredArgsConstructor,@AllArgsConstructor:作用于类上,用于生成构造函数。@Data:作用于类上,是以下注解的集合:@ToString @EqualsAndHashCode @Getter @Setter @RequiredArgsConstructor。@ToString:作用于类,覆盖默认的toString()方法,可以通过of属性限定显示某些字段,通过exclude属性排除某些字段。lombok常用注解。
2025-02-07 14:33:16
316
原创 MySQL忘记密码了怎么办
validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数;validate_password.special_char_count 整个密码中至少要包含特殊字符的个数;validate_password.number_count 整个密码中至少要包含阿拉伯数字的个数;validate_password.policy 指定密码的强度验证等级,默认为 MEDIUM;2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;0/LOW:只验证长度;
2025-01-14 10:55:29
548
原创 MySQL自定义函数
函数与存储过程类似,也是一组预先编译好的SQL语句的集合,但是存储过程可以有0个或多个返回,函数就只能有一个返回。特别提醒一下:我在创建函数的时候出错了。MySQL自定义函数。
2025-01-07 15:51:03
362
原创 MySQL存储过程
存储过程一般是独立执行,而函数一般是作为其他sql语句的组成部分出现。减少了编译次数并且减少了和数据库连接次数,提高效率。INOUT 该参数既可以作为输入,也可以作为输出。存储过程是一组预先编译好的SQL语句的集合。IN 该参数可以作为输入,需要调用方传入。存储过程可以返回多个值,而函数只能返回一个。OUT 该参数可以作为输出,作为返回值。
2024-12-30 10:02:31
408
原创 Druid密码错误重试导致数据库超慢
有同事把项目的数据库密码配错了,导致其他所有连接该数据库的项目全部连接都获取缓慢了,一个页面加载要花费十几秒。由于连接的host全是我们服务器的ip,所以一开始想到的是服务器是不是被黑了,然后频繁的尝试破解数据库密码。如果失败5次后不想重试,直接退出呢?这样就算数据库恢复也不会连接到数据库了,可以这样配置。结果发现pid是我们自己的项目,拉下来代码一看,密码配置的不对。如果连重试都不想重试呢?这样配置的话失败5次之后,会休眠10s在进行重试。druid有个配置是连接重试次数。密码错误重试导致数据库超慢。
2024-12-30 09:58:48
465
原创 MySQL变量
用户变量针对于当前会话有效,用户变量在声明时必须进行初始化。仅在定义该局部变量的begin end中有效。MySQL变量分为系统变量和自定义变量。自定义变量的步骤:声明、赋值、使用。自定义变量分为用户变量和局部变量。系统变量有全局变量和会话变量。
2024-12-24 10:20:16
425
原创 MySQL查询顺序
在sql中对于null值一定要小心处理,true or null的运算结果是true,而false or null的运算结果是null,一旦混入了null,结果就会是null,所以在使用in或者or来进行逻辑运算时,一定要考虑是否会涉及null值。在order by中也可以使用case表达式来根据条件逻辑动态的调整排序项。在进行MySQL查询之前首先要先知道MySQL执行查询语句的执行顺序。使用聚集函数进行计算(sum、max、min、count等)使用order by进行排序。
2024-12-17 11:55:01
416
原创 MySQL约束
MySQL约束数据库有六大约束,分别为NOT NULL 非空约束,用于保证这个字段不能为空DEFAULT 默认约束,用于保证该字段有默认值PRIMARY KEY 主键约束,用于保证该字段可以唯一表示该行记录,唯一且非空UNIQUE 唯一约束,用于保证该字段的唯一性,可以为空CHECK 检查约束(MySQL不支持该约束)FOREIGN KEY 外键约束,用于限制两个表的关系,用于保证该字段必须来自于主表关联列的值(在从表中添加外键约束,用于引用主表中某列的值)示例:create tab
2024-12-10 14:42:34
407
原创 xuggle操作视频
有个需求是要读取视频的宽高,找到了Xuggle和FFmpeg两种方式,FFmpeg很强大,但是我并不需要那些功能,所以使用了轻量一点的Xuggle。该依赖中包含有xuggle-xuggler且maven仓库中存在。可能maven仓库中没有该依赖,可以下载后放到本地仓库或私服。xuggle操作视频。
2024-12-10 14:39:00
646
原创 MySQL删除数据要谨慎
truncate比delete速度快,因为delete每删除一条数据需要在事务日志中为删除的每行数据进行记录,而truncate则通过释放数据页来删除数据,且只在事务日志中记录页的释放。delete删除不会删除自增长字段,再次新增字段时从断点继续自增,truncate删除数据之后自增长字段从1开始。delete可以加where条件进行删除,truncate不可以,只能删除全表数据。delete删除会返回删除的条数,truncate删除不会返回。delete删除可以回滚,truncate删除不可以回滚。
2024-12-03 18:13:15
507
1
原创 java获取汉语拼音
当然是有解决方案的,该工具提供了一个外挂,可以自定义一些词的多音字组合。之前有个需求是要显示汉语拼音,然后找了一个工具包。但是有时候是多音字的怎么处理的,比如长沙市。后续的多音字直接在该文件中加入就行。在一块的话读changsha。
2024-12-03 18:08:04
382
原创 博客搭建之路:hexo博客next主题使用echarts图表
在next/layout/_layout.swig文件中添加echarts引用(在。在next/scripts/helpers下创建charts.js。在next/layout/archive.swig文件中修改。在next/layout/page.swig文件中修改。在next/layout/page.swig文件中修改。hexo博客next主题使用echarts图表。创建charts.js。添加echarts引用。标签页增加标签统计图。分类页增加分类统计图。归档页增加归档统计图。
2024-11-26 14:31:05
327
原创 SQL语句分类
SQL 语言集中负责数据结构定义与数据库对象定义的语言,主要功能是定义数据对象,create、drop、alter语句,属于隐式提交,不能回滚。数据操作语言DML(Data Manipulation Language)视图 通过计算定义的关系,并不在数据库中存储,只在需要的使用进行构造。临时表 在执行查询或更新时由SQL程序临时构造的,处理结束后就会删除。数据控制语言DCL(Data Control Language)insert、update、delete语句。grant授权、revoke。
2024-11-20 10:05:00
932
原创 博客搭建之路:hexo博客增加板娘
网上看到一个人也是用hexo写的博客,他的博客右下角有个二次元小姐姐,看着倒是不错的。我也是用的hexo,我是不是也可以加上,bing一下,看看这是怎么实现的?这个要使用国内的镜像,不然下载不下来,我使用的是淘宝镜像。发现是使用的插件来实现的,操作还是蛮简单的。中增加live2d的配置。用哪个模型需要提前安装。hexo博客增加板娘。
2024-11-20 10:00:49
400
原创 博客搭建之路:next主题数学公式问题
我写的都是一些编程相关的文章,有些文章里是存在数学公式的,我在Typora软件中写的时候显示的是对的,但是hexo将markdown转为html后在页面上就没有数学公式的格式了。这个测了一下,不需要将之前的卸载掉,两者不冲突。查找next配置发现有一个渲染数学公式的配置。然后在对应的需要数学公式渲染的文章上加上。卸载掉,这个我回头试一下是否需要卸载。next主题数学公式问题。看一篇文章说是需要先将。
2024-11-12 10:38:45
529
原创 博客搭建之路:next主题修改侧边栏icon
next主题中使用的是由 Font Awesome提供的图标,对于国内应用的图标基本都不支持。为了实现侧边栏小图标的展示,只能自己来设置样式了。来下载自己需要的icon,选择svg格式下载,并将文件保存在source\images目录下。把style的注释放开,然后在对应目录下创建对应的styles.styl。配置文件中有custom_file_path,可以用来进行自定义配置。以csdn为例,在styles.styl文件中新增csdn样式。next主题提供了自定义样式的口子,在next下的。
2024-11-06 14:06:04
447
Mycat-server-1.6.7.4-release-20200105164103-mac.tar.gz
2022-05-20
apache-shardingsphere-incubating-4.0.1-sharding-proxy-bin.tar.gz
2022-05-13
java中的强引用软引用问题
2017-05-21
myeclipse报错自动关闭
2017-05-19
java内部类中的局部变量
2017-05-19
关于JavaScript的事件
2017-04-24
myeclipse下编写的jsp中文乱码
2017-04-23
html表格单元格焦点事件问题
2017-04-22
myeclipse中编写html表单
2017-04-21
TA创建的收藏夹 TA关注的收藏夹
TA关注的人