自定义博客皮肤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)
  • 资源 (7)
  • 收藏
  • 关注

转载 Mybatis Plus中的lambdaQueryWrapper条件构造图介绍

Mybatis Plus中的lambdaQueryWrapper条件构造图

2021-06-15 13:37:59 1942

原创 重构功能带来的配套改造查找思路

1、根据DO\VO\DTO\QUERY等实体查找本模块的相关调用方法,确保在不影响其业务逻辑的情况下进行替换。4、前端和移动端根据controller入口路径进行排查,替换具有相同效能的接口,注意字段是否发生变化。3、根据提供的feign查询关联模块的调用方法,确保在不影响其业务逻辑的情况下进行替换。2、根据表名查找本模块xml中的CRUD语句,确保在不影响其业务逻辑的情况下进行替换。

2024-07-08 15:52:24 272

原创 MySQL批量插入数据的几种方式

3、上边都是一些懒人做法,最佳的方式还是自己写xml的insert语句,但是也要注意数据量,特别巨大的时候,还是要分批进行,这种情况一般少一些,大部分项目场景遇不到。

2024-07-08 15:12:45 387

原创 Java入门学习路线参考

以上每个阶段都建议结合实际的小项目或者练习题进行实战演练,以巩固所学知识点。同时,持续关注行业动态和技术发展,适时引入Java 8及以上版本的新特性,如Lambda表达式、Stream API等。这样,你将能够逐步构建起完整的Java知识体系,为后续更深入的学习或开发工作打下坚实的基础。

2024-02-21 17:05:56 1147

转载 SQL的执行顺序图解

分组结束之后,我们再执行select语句,因为聚合函数是依赖于分组的,聚合函数会单独新增一个查询出来的字段,这里用紫色表示,这里我们两个id重复了,我们就保留一个id,重复字段名需要指向来自哪张表,否则会出现唯一性问题。我们之前看到了普通的筛选条件是不影响的,但是having还支持聚合函数,这是where无法实现的。然后把再根据我们要的数据进行select,可以是普通字段查询也可以是获取聚合函数的查询结果,如果是集合函数,select的查询结果会新增一条字段。用于确定我们要查询的表的范围,涉及哪些表。

2024-02-21 16:37:50 310

原创 xml里面<foreach>标签用法

foreach> 标签主要用于实现迭代功能,它可以遍历Java对象中的集合属性或者数组,并根据其内容动态生成相应的SQL片段。总结来说,XML中的<foreach>标签极大地增强了我们对数据库执行复杂操作的能力,特别是对于那些需要灵活处理集合类型数据的情况。通过这种方式,当调用这个映射方法并传入一个用户对象列表时,MyBatis会根据列表中的每个用户对象动态地生成一系列的INSERT语句,从而实现高效的批处理操作。•item:定义循环变量名,在本例中为"user",表示集合中当前遍历的对象。

2024-02-21 15:57:36 1977

原创 Listary文件搜索工具使用分享

我们在日常工作和生活中,电脑里面如果放了很多的内容,整理划分的又不是特别合理的情况下,想找到我们需要的文件和内容是有些费劲的,在搜索的过程中浪费大量的时间和精力,今天推荐一款我目前在用的文件搜索工具,体验着实不错。更多使用方法和自主设置可以右键点击图标,从选项中自行设置,小伙伴们快去试试吧!

2023-12-27 17:49:06 703

转载 IDEA 微服务项目多个启动类如何显示Run Dashboard窗口

如果做完以上三步保存了,还是没出现Run Dashboard窗口,则继续下面的操作。这样就不用去目录中一个个去找启动类啦So Happy!

2023-12-27 15:30:19 406

原创 Java中List转Map的几种方式

在List转Map的过程中,我们可以选择使用for循环遍历、Java8 Stream API、Apache Commons Collections或Google Guava。对于小规模数据集,使用for循环遍历是最简单直接的方式。而对于大规模数据集,Java8 Stream API提供了更高效和优雅的实现方式。如果你使用了Apache Commons Collections或Google Guava这些类库,则可以利用它们提供的工具方法简化代码。选择合适的方式取决于实际需求和项目环境。

2023-12-27 15:23:38 16399 1

原创 MYSQL分组排序问题的解决

最近遇到一个问题,需要根据两张表(一对一)的查询结果进行分组并按照时间倒序排序,问题的关键是分组的字段和排序的字段还不在一张表,因为执行顺序group by是在orderby之前的,先groupby分组再orderby排序发现记录不是每组排序的第一条;把查询结果作为子查询先orderby排序,最后在对整体记录groupby分组也得不到想要的结果,搞得很头疼 通过对官方文档的查询和网上资料以及自己的验证,把解决的几种方案总结一下,一个是对之后碰到这些问题的快速回忆,

2023-07-04 16:01:18 5965 2

原创 HashMap的merge()方法

底层实现是这样的,该方法接收三个参数,一个 key 值,一个 value,一个 remappingFunction ,(remappingFunction :重新映射函数,用于重新计算值,得到newValue)如果给定的key不存在,它就变成了 put(key, value)。最近遇到一个需求,需要统计各个会员的正在履行合同的合同租金总计,以此作为制定会员等级的标准。代码的业务问题就不说了,先看看这个累计的实现,这样其实是可以实现的,就是看起来不是很友好和简洁,既要写冗余的if判断,还让人读起来很费劲。

2023-05-19 15:30:57 1653

原创 Spring常用注解介绍

使用@Controller注解的控制器可以被Spring容器注入到一个或多个Bean中,并在应用程序中被调用。在上面的示例中,@RequestMapping注解的参数"{id}"表示请求URL路径中的变量名称为"id",并将请求映射到名为UserController的控制器中的User方法。在上面的示例中,@RequestMapping注解的参数"{id}"表示请求URL路径中的参数名称为"id",并将请求映射到名为UserController的控制器中的User方法。

2023-04-24 14:57:16 1047

原创 Java中的多态性是什么,以及它的优点是什么?

在Java中,多态性可以通过继承和接口实现。具体来说,多态性允许我们使用父类或接口类型的引用来引用子类或实现类的对象,从而实现代码的灵活性和可扩展性。代码的可读性和可维护性更好。通过使用多态性,我们可以将代码分离为更小的、更易于理解的部分,从而使代码更易于维护和修改。代码的可重用性更好。通过使用多态性,我们可以将通用的代码放在父类或接口中,从而使代码更易于重用。代码的可扩展性更好。通过使用多态性,我们可以轻松地添加新的子类或实现类,而无需修改现有的代码。多态性是指同一操作可以在不同的对象上具有不同的行为。

2023-04-04 15:39:31 1527

原创 HashMap和LinkedHashMap在Java中有什么区别?

HashMap是使用哈希表实现的,这意味着它使用哈希函数将每个键映射到数组中的一个桶中。这意味着元素按照它们被插入的顺序存储,这允许按照它们被添加的顺序高效地迭代条目。但是,基本操作(如put、get和remove)的最坏情况性能仍然是O(n),对于大型映射可能比HashMap慢。如果需要条目按照它们被添加的顺序存储并高效地按照它们被添加的顺序迭代条目,请使用LinkedHashMap。HashMap和LinkedHashMap都是Java中Map接口的实现,但它们在底层数据结构和性能特征上有所不同。

2023-03-31 14:43:21 1165

原创 HashSet和TreeSet在Java中有什么区别?

这意味着元素按排序顺序存储,这允许进行高效的范围查询和操作(如first、last和subSet)。但是,基本操作(如add、remove和contains)的最坏情况性能是对数级别的,对于小型集合而言可能比HashSet慢。HashSet是使用哈希表实现的,这意味着它使用哈希函数将每个元素映射到数组中的一个桶中。但是,HashSet中元素的顺序不能保证一致,并且在迭代HashSet时可能没有特定的顺序。总之,如果需要基本操作具有常数时间性能并且不关心元素的顺序,请使用HashSet。

2023-03-31 14:40:22 1039

原创 Java中的HashMap和HashTable有什么区别?

最后,HashMap的迭代器是快速失败的,而HashTable的迭代器不是。总之,如果需要在多线程环境中使用键值对存储,并且不需要使用null作为键或值,请使用HashTable。如果在单线程环境中使用键值对存储,并且需要使用null作为键或值,请使用HashMap。这意味着在多线程环境中,HashTable可以保证对其操作的同步性,而HashMap则需要使用同步机制来保证线程安全。另外,HashTable的方法是同步的,而HashMap的方法不是。

2023-03-31 14:36:45 993

原创 ArrayList和LinkedList在Java中有什么区别?

这使得LinkedList在需要在列表中间插入或删除元素时是一个不错的选择,因为这可以通过更新相邻元素的引用来在常数时间内完成。但是,在LinkedList中访问元素的索引比在ArrayList中慢,因为它需要从开始或结束遍历列表到所需的索引。这使得ArrayList在需要通过索引快速访问元素时是一个不错的选择,但在需要在列表中间插入或删除元素时不是很好,因为这需要移动所有后续元素。总之,如果需要通过索引快速访问元素并且不需要在列表中间插入或删除元素,请使用ArrayList。

2023-03-31 14:30:38 960

原创 陪我一起走过四年时光的伙伴

当时对电脑配置也不是很了解,只是根据关键词搜索,然后看基础的配置信息比如运行内存、磁盘大小、尺寸和图片等信息,当时还想着最好既能玩游戏也可以适应办公,挑挑选选终究是花了眼,犹豫纠结了好几天,然后在一天中午,我看到了它--机械革命深海幽灵具体型号我已经想不起来了,购物记录也找不到了。

2023-03-24 11:35:04 987

原创 git合并分支

首先确保要合并的两个分支 本地分支与远程分支一致。直接通过IDEA提交冲突代码至本地仓库。有冲突的话,通过IDEA解决冲突。使用merge合并开发分支。

2023-02-22 14:09:48 1594

原创 计算间隔月份向上取整

我们在项目开发中,有时会遇到计算间隔月份的需求,但是工具类一般提供的方法是向下取整,如果我们需要向上取整的间隔月份就很麻烦,今天分享一个我处理这种问题的方法,需要的可以借鉴一下,有其他更简单的方法也可以评论交流。

2023-02-10 14:01:17 1480

转载 解决:Command line is too long. In order to reduce its length classpath file can be used.

修改项目下 .idea\workspace.xml,找到标签 , 在标签里加一行

2023-01-13 16:29:54 1271

原创 Java两整数相除向上取整

Java两整数相除向上取整的三种方式

2023-01-13 16:26:37 2968

原创 税额的计算

不含税金额 = 含税金额/(1+税率)*税率。税金 = 含税金额 - 不含税金额。

2023-01-05 14:02:26 1324 2

原创 String.valueOf()方法避坑指南

String.valueOf(null)异常分析

2022-11-08 09:38:01 2813

转载 Java基础知识面试题(很详细,建议挑用得到的看)

面试必备的基础知识宝典

2022-09-01 10:10:20 1295

原创 String数组与List集合的相互转换

数组自然是前端传入的,不方便贴原代码,就随便写个例子供参考;然后用contains判断集合是否包含,逐个给对象赋值就完事了,赋值用if判断可以,用三目运算也行。阉割了一下的代码,作为思路参考,然后把数组给对象赋值,返回就完事了,希望多多支持!

2022-08-22 11:05:31 8567 1

转载 @Transactional 的原理和不生效的场景分析

Java 后端面试的时候,面试官经常会问到 @Transactional 的原理,以及容易踩的坑,今天就跟大家分享下掘金一位博主的文章这篇文章,

2022-08-17 10:48:08 1875

转载 Git常用命令

配置https和ssh推送时保存用户名和密码。推送到远程仓库正确流程。二、配置(全局和项目)

2022-08-01 10:29:11 1194

原创 检查身份证号是否符合规则

日常开发中,我们会遇到各种各样的数据校验规则,最简单的从非空到复杂一些的编码输入规则,今天就分享一个身份证编码的校验,这个其实也是很常见的,写出来一个是加深印象,其次也可以分享给大家使用,后续想找的话也可以很快找到,上代码:其中的正则表达式没啥说的,有基础的可以看懂,没基础的复制完了自己试试好使就行,主要是对18位身份证号最后一位的校验,可能需要看看代码逻辑理解一下,前17位数乘以对应的加权因子,然后除以11的余数是验证码数组的索引,如果跟第18位不对应,说明输入错误,有需要的兄弟拿去试试吧.....

2022-07-14 09:14:39 1522

转载 日期格式化时注解@DateTimeFormat无效的问题分析

日期格式化时注解@DateTimeFormat无效的问题分析背景有时候我们在写接口时,需要把前台传来的日期String类型转为Date类型这时我们可能会用到@DateTimeFormat注解在请求数据为非JSON格式时,这个注解是没有问题的,可用的;但是当请求数据为JSON格式时,问题就出现了此时如果请求参数没有加@RequestBody注解,那么请求参数不会执行类型转换操作,数据都是默认为空(基本类型比如int = 0, 对象引用比如Date date= null)此时如果请求参数有加@Reques

2022-06-22 16:41:16 7146 1

转载 Stream流的排序用法

通过以上例子我们可以发现Comparator.comparing(类::属性一).reversed();Comparator.comparing(类::属性一,Comparator.reverseOrder());两种排序是完全不一样的,一定要区分开来 1 是得到排序结果后再排序,2是直接进行排序,很多人会混淆导致理解出错,2更好理解,建议使用2。可以使用Comparator.nullsLast或者Comparator.nullsFirst来避免,nullsLast表示值为空时,排在最后,nullsFirs

2022-06-17 15:29:42 3888

原创 Poi导出Excel为文本格式

导出是我们经常会用到的功能,在导出时有时候会因为一些格式的问题导致与页面数据存在差异、比如日期自动转换和科学计数法等等,在导出时设置好单元格格式就可以解决这个问题,这里我们就举个最简单最常用的例子,设置单元格格式为文本,下面上代码:引入套用就可以,多多支持!...

2022-06-10 09:30:09 2171

原创 Poi导出Excel模版设置单元格为下拉框格式

日常开发中,导出基础数据为模版,填充信息后导入时,有时候会要求某些导入项应该为下拉框选择,一个是为了规范数据,也可以简化填充,话不多说,下面上代码:导出前调用就可以了!

2022-06-08 11:32:15 2138

原创 Poi导入校验因单元格格式产生的空对象问题

今天遇到一个问题,需求是需要导出符合条件的基础数据,然后用户填充详细信息后再导入系统,这时候就碰到一个问题,因为Poi导出默认的是常规格式,有些数据比如身份证号、银行卡号等比较长的数字很容易变为科学计数法形式的记载,时间格式也可能跟你想要的不一样,这时候就需要我们在导出的时候设置好单元格的格式,比较简单的就是直接全部设置为文本,这时候又会产生新的问题,文本格式的数据会作为空对象进入系统,如果没有合适的校验,可能会导致程序报错或者垃圾数据进入,下面我分享下我当时的解决方法,话不多说,直接上代码:.....

2022-06-07 10:07:09 1557

原创 Poi导入Excel校验表头

我们在日常的开发过程中,poi导入数据要根据注解的列名和顺序进行识别,那么首先要校验模版的正确与否,即表头是否正确,然后才能开始数据和业务层面的校验,最近也是被这个东西烦的不行,解决后记录一下,一个是方便自己以后查看,也给其他兄弟分享下,节省时间,话不多说,直接上代码:通过有序集合的比较,就可以得出表头是否正确的结论啦,分享就到这里,有需要的兄弟快去试试吧!......

2022-06-07 09:47:27 3051 4

原创 Java利用redis限制重复操作带来的数据问题-进阶

之前在Java利用redis限制频繁操作带来的数据问题_默慊$的博客-CSDN博客_频繁操作redishttps://blog.csdn.net/weixin_44186319/article/details/118415775分享过通过redis来限制重复操作和重复点击,这个对于限制前端操作来说已经够用,但是在面对一些并发的线程同时调用资源时还是会存在问题,当你未将指定的key放入redis时,已经被多个线程同时调用了,这样可能会造成重复的业务数据,程序处理也会有问题。今天来分享下解决这个问题的进阶版

2022-04-20 16:49:58 3062 2

原创 git 基于某个分支创建新分支

在平时的开发工作中,我们时常会遇到开发一个新功能,这个功能不是一两天就能完成的,且在日常分支上开发会影响正常的逻辑运行,这时候就面临着需要从现有日常分支的基础上新创建一个功能分支用来开发,开发自测完成后再同步回来,今天就分享下简单的创建步骤:1、打开Git Bash Here进入要存放的代码目录cd代码目录2、根据已有分支创建新的分支git checkout -b yourbranchname origin/oldbranchname3、推送到gitgit push or.

2022-03-03 09:48:07 9149

原创 XML的注释踩坑记录

今天碰到一个挺无语的事情,明明我的sql注释了,但是在服务器上的sql打印中还是有,并且因为注释的sql中一个已经去掉的参数还报错了。。。查询了一番下来,原因大致如下,分享出来给兄弟们避避坑:1、xml中的sql注释要规范,应该以::<! --注释内容-->,而不是:/**/2、无用的sql尽量及时删除,以免不必要的问题产生,如果想找到之前的记录,去历史版本里找就好了,没必要注释3、更改sql后一定本地运行调试下,再简单也不要忽视这些细节...

2022-01-24 14:21:30 2265

原创 MySQL数据库,内连接、外连接中做条件筛选和WHERE中条件筛选的区别

在内连接、外连接ON后用AND做条件筛选数据时,是先对连接表的数据进行条件筛选,筛选后和被连接表进行相应连接,而WHERE是对结果集进行筛选,先连接后筛选数据。

2022-01-09 17:12:59 2337

原创 前后台交互的Date类型入参和出参

今天来分享一个前后端分离项目经常遇到的Date类型传参和返回值的问题吧,其实在日常的开发中,我们在一般情况下用注解就可以解决大部分问题,在这就说说注解吧:1、@JsonFormat(pattern="")出参格式化格式自填,这个注解呢就是解决出参是date类型的问题,将查出的date字段转换为你想要的格式返回给前端,不加它,你返回的就可能是这样的:2018-08-01T14:25:31.296+0000,当然你也可以通过格式转换DateFormat类和SimpleDateFormat类然后新定义字段

2022-01-05 10:20:01 3354

Listary文件搜索工具使用分享

Listary文件搜索工具使用分享

2023-12-27

Java缓存技术总结初见

可以供初级开发人员参考,只是个人的一些理解和查询的内容,有问题欢迎留言讨论

2022-06-15

mysql面试题.docx

简单汇总了下MySQL相关的面试资料,希望对你有帮助

2021-10-21

Excel练习.xltx

适合初步学习Excel基础操作和基本函数的小白使用

2021-10-19

代码生成器code-gen

一款简单的代码生成器,只需要一个存放地址,一个运行环境,提供一个可视化的web页面,通过你的页面操作生成对应表的crud逻辑代码和sql

2021-04-21

开发组件启动脚本可供参考,放在桌面,可以节省找组件和启动组件的时间

可根据实际组件所在位置进行文本编辑,提供脚本化启动单割或多个组件,节省初始时间

2021-04-21

一份简单的述职报告,可供参考.docx

没时间写这玩意,还感觉贼烦的兄弟可以拿去用

2021-04-21

Postman调试为中文版资源包

解压后即可使用,方便快捷,存放路径可参考:C:\Users\MyPC\AppData\Local\Postman\app-7.36.5\resources\app

2021-04-21

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

TA关注的人

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