自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 order by 利用索引有序性,避免出现 file_sort 的情况,提高查询性能

优化索引排序就两种,一种利用索引有序性的,不用额外排序,直接查出就是有序的;另一种就需要额外排序的。这需要理解组合索引的有序性来进行Sql的优化,并不是格式一定的,可以灵活变化,比如组合索引的三个字段都来使用作为过滤条件呢,什么条件会不用额外排序呢?更多的条件呢?阿里巴巴开发手册的着重点是想要我们利用索引的有序性,来完成我们的排序目的,而不需要额外的排序操作。额外的排序操作有些糟糕的情况是很费性能的,这部分可以了解order by的单路排序和双路排序。

2023-08-23 16:08:00 171

原创 异常操作类

UnsupportedOperationException是Java中的一个标准异常类,用于指示不支持的操作。在这种情况下,如果条件不满足,表示该操作不被支持,可以抛出UnsupportedOperationException来表示不支持的操作。在这种情况下,如果枚举类型不符合预期条件,可以抛出IllegalArgumentException来表示参数的非法值。在查询数据库时,如果没有匹配的结果返回,可以抛出NoSuchElementException来表示查询结果为空。一个查询SQL,结果为空。

2023-07-28 16:02:49 99 1

原创 stream流各操作流的函数

Collection体系集合使用默认方法stream()生成流, default Stream stream()Map体系集合把Map转成Set集合,间接的生成流数组通过Stream接口的静态方法of(T… values)生成流。

2023-07-28 11:20:09 157 1

原创 SQL相关注意事项

日常开发写SQL的时候,尽量养成这个好习惯呀:写完SQL后,用explain分析一下,尤其注意走不走索引。如果要修改或删除数据,在执行SQL前一定要先备份要修改的数据,万一误操作,还能吃口统一使用UTF8编码说明:pk_ 即 primary key;uk _ 即 unique key;idx _ 即 index 的简称。假设loginTime加了索引。

2023-07-28 10:22:25 238 1

原创 idea设置忽略代码报错,只运行当前测试;启动命令行太长报错

解决Run-->Edit Configurations...-->Modify options-->Shorten Command line-->选择JAR。2、设置忽略代码报错,只运行当前测试类。1、启动命令行太长报错。

2023-07-24 17:10:49 682

原创 idea中git常用操作

要将整个文件添加到本地仓库,您可以按照以下步骤操作:1. 打开终端或命令行界面,并导航到您的代码项目目录。初始化新的仓库:在仓库的根目录中,执行以下命令来初始化一个新的仓库:git init这将创建一个新的空白仓库,2. 使用以下命令将所有文件添加到本地仓库:git add . 这将添加所有文件和文件夹中的更改到本地仓库。请注意, . 表示当前目录。git commit -m "添加文件到本地仓库"将引号中的消息替换为您想要的提交消息。现在,您的文件已成功添加到本地仓库中。

2023-07-09 09:34:03 184 1

原创 Optional常用判空

2.3、使用orElseThrow()方法在Optional对象为空时抛出异常:optional.orElseThrow(() -> new Exception("Value is not present"))这个方法会在有值的时候返回值,如果没有值,它会执行作为参数传入的 Supplier(供应者) 函数式接口。当optional中的值不为null时,orElse()中调用一个new对象的函数,无论前面optional是否为空,orElse()里面的方法都要执行,也就是都会执行创建,会消耗性能。

2023-07-04 22:39:29 1842 1

原创 Linux上80端口,8080端口等被占用解决

如上图可见没有列举出当前有程序占用,说明已经杀掉!

2023-06-26 21:02:59 861 1

原创 写代码注意事项

6、这个异常没有必要往上抛,不影响主流程,不会影响后续代码逻辑,只需要记录下来,吞掉,代码继续往下走。2、service入参做参数校验(@Valided),controller层也要参数校验。5、异常==>看异常的子类。最好输出异常的参数,异常的信息,使用log.error(e),4、调用同事的方法/service,要在日志中,调用前打印我们的入参,调用后打印出参。3、调用某个方法得到一个对象或者集合等等,要先optional判空。1、调用三方接口要做异常处理。

2023-06-19 15:16:50 86

原创 java中注解实现敏感数据脱敏

在使用该注解时,只需要在需要脱敏的字段上添加该注解即可。字段使用了手机号码脱敏类型,并指定了脱敏规则为前3位明文,后4位明文,中间用*代替;:脱敏类型,枚举类型,包括默认脱敏、姓名脱敏、手机号码脱敏、身份证号码脱敏等;:脱敏规则,例如:手机号码脱敏规则为:前3位明文,后4位明文,中间用*代替;:脱敏开始位置,从0开始计数,默认为0;:脱敏占位符,例如:用*代替敏感数据;字段使用了默认脱敏类型,对姓名进行脱敏处理。:脱敏结束位置,默认为整个字符串长度。注解进行了脱敏处理。该注解包含了以下属性: -

2023-06-19 14:00:34 745

原创 java项目中使用@Validated注解进行数据校验

Spring Validation验证框架对参数的验证机制提供了@Validated(Spring’s JSR-303规范,是标准JSR-303的一个变种),javax提供了@Valid(标准JSR-303规范),配合BindingResult可以直接提供参数验证结果。简言之:@Validated进行分组验证和方法验证(方法入参的验证(普通和对象)),@Valid主要嵌套验证。不能用在成员属性(字段)上,也无法提示框架进行嵌套验证。能够用在成员属性(字段)上,提示验证框架进行嵌套验证。

2023-06-19 13:51:59 3741

原创 java中如何计算出对象的大小,设置JVM参数,防止OOM问题

首先,我看B站up说在对象中包装类属性的大小是4个字节,保存的是在堆中的地址。基本数据类型大小就是实际的大小。1、对象本身在堆空间的大小:它的属性如果是对象只会保存引用地址。就不是实际属性对象的大小。2、对象及其引用树上的所有对象的综合大小:就包含了属性对象的大小,是全部大小的总和。

2023-06-13 19:09:46 453 1

原创 开发中如何优雅得到方法/代码块耗时情况

优雅得到代码耗时,方便我们进行优化

2023-06-13 10:56:41 54 1

空空如也

空空如也

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

TA关注的人

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