自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

敲代码的青铜的博客

关注后才可阅读更多笔记!

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

原创 全局处理出参日期格式

好久没写了 直接上货吧import com.fasterxml.jackson.databind.DeserializationFeature;import com.fasterxml.jackson.databind.MapperFeature;import com.fasterxml.jackson.databind.SerializationFeature;import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeser

2022-01-26 19:23:06 230

原创 MySQL实战45讲—第二讲(日志系统:一条SQL更新语句是如何执行的)学习笔记

MySQL实战45讲—第二讲(日志系统:一条SQL更新语句是如何执行的)学习笔记​首先,查询语句的那一套流程,更新语句也是同样会走一遍。然后在一个表上有更新的时候,跟这个表有关的查询缓存会失效,所以这条语句就会把表T上所有缓存结果都清空。分析器会通过词法和语法解析知道这是一条更新语句。优化器决定要使用 ID 这个索引。然后,执行器负责具体执行,找到这一行,然后更新。​更新流程涉及两个重要的日志模块:redo log(重做日志)和 binlog(归档日志)。重要的日志模块:redo log​当有一条记

2022-01-07 19:34:37 611

原创 MySQL实战45讲---第一讲(基础架构:一条SQL查询语句是如何执行的)学习笔记

MySQL实战45讲—第一讲(一条SQL查询语句是如何执行的)学习笔记1、MySQL逻辑架构图主要分为Server层和存储引擎层两部分**Server层:**连接器、查询缓存、分析器、优化器、执行器**存储引擎层:**数据存储和提取2、流程2.1 先到连接器​ 负责跟客户端建立连接、获取权限、维持和管理链接。​ show processlist可查看连接状态。2.2 查询缓存​ 拿到一个查询请求后,会先到查询缓存看看,之前是不是执行过这条语句。之前执行过的语句及其结果可能会以 k

2022-01-05 17:36:01 609

原创 记录多线程小Demo

构建线程池package com.jd.mallcoo.custom.common.thread;import org.springframework.stereotype.Component;import javax.annotation.PreDestroy;import java.util.concurrent.ArrayBlockingQueue;import java.util.concurrent.ThreadPoolExecutor;import java.util.concu

2022-01-04 16:47:39 126

原创 Idea个人常用快捷键、插件、基础设置

1、常用快捷键换行:shift+enter复制一行:ctrl+d删除一行:ctrl+y格式化:ctrl+alt+l导包:alt+enter进入方法:ctrl+alt+b对代码包裹:ctrl+alt+t快速启动:ctrl+shift+f10类中搜索:ctrl+f替换:ctrl+r重命名:shift+f6全局搜索:ctrl+shift+f显示方法参数:ctrl+p搜索类:shift+shift快速创建类文件、set/get等:alt+insert快捷创建类等:.var快速遍历:

2022-01-04 16:32:57 910

原创 MongoTemplate多个字段范围复杂查询(andOperator)

当有多个字段需要范围查询时,由于MongoTemplate只能添加一次andOperator,所以可以利用list集合加数组的方式实现。List<Criteria> criteriaList = new ArrayList<>();//list.add(添加不同的字段范围的Criteria)if (!CollectionUtils.isEmpty(criteriaList)) { Criteria[] criteriaArray = new Criteria[crite

2021-12-31 10:35:03 1765

原创 算法图解笔记之第六章(广度优先搜索)

1、广度优先搜索指出是否有从A到B的路径。2、如果有,广度优先搜索将找出最短路径。3、面临类似于寻找最短路径的问题时,可尝试使用图来建立模型,再使用广度优先搜索来解决问题。4、有向图中的边为箭头,箭头的方向指定了关系的方向,例如,rama→adit表示rama欠adit钱。5、无向图中的边不带箭头,其中的关系是双向的,例如,ross - rachel表示“ross与rachel约会,而rachel也与ross约会”。6、队列是先进先出(FIFO)的。7、栈是后进先出(LIFO)的。8、你需要按

2021-05-25 14:55:12 106

原创 Caused by: org.apache.ibatis.type.TypeException: The alias ‘****‘ is already mapped to the value

报错解决:查看配置文件mybatisplus的配置路径问题 删除不需要的

2021-05-20 15:34:45 1107

原创 算法图解笔记之第五章(散列表)

1、散列函数总是将同样的输入映射到相同的索引。每次你输入avocado,得到的都是同一个数字。因此,你可首先使用它来确定将鳄梨的价格存储在什么地方,并在以后使用它来确定鳄梨的价格存储在什么地方。2、散列函数将不同的输入映射到不同的索引。avocado映射到索引4,milk映射到索引0。每种商品都映射到数组的不同位置,让你能够将其价格存储到这里。3、散列函数知道数组有多大,只返回有效的索引。如果数组包含5个元素,散列函数就不会返回无效索引100。这里总结一下,散列表适合用于:1、模拟映射关系;2、

2021-05-19 11:44:46 96

原创 算法图解笔记之第四章(快速排序)

1、D&C(分而治之)将问题逐步分解。使用D&C处理列表时,基线条件很可能是空数组或只包含一个元素的数组。2、实现快速排序时,请随机地选择用作基准值的元素。快速排序的平均运行时间为O(n log n),最坏O(n2)。3、大O表示法中的常量有时候事关重大,这就是快速排序比合并排序快的原因所在。4、比较简单查找和二分查找时,常量几乎无关紧要,因为列表很长时,O(log n)的速度比O(n)快得多。/** * 快速排序 */public static void quickSort(

2021-05-19 10:40:35 100

原创 解决不同浏览器文件下载文件名乱码问题(Java)

直接上代码:/** * 处理不同浏览器下文件名乱码问题 */public static void browserFilenameEncode(HttpServletResponse response, HttpServletRequest request, String downFileName) throws UnsupportedEncodingException { String userAgent = request.getHeader("USER-AGENT"

2021-05-18 09:29:58 337 1

原创 算法图解笔记之第三章(递归)

1、递归指的是调用自己的函数。2、每个递归函数都有两个条件:基线条件和递归条件。3、栈有两种操作:压入和弹出。4、所有函数调用都进入调用栈。5、调用栈可能很长,这将占用大量的内存。...

2021-05-17 17:20:11 68

原创 算法图解笔记之第二章(数组、链表、选择排序)

1、计算机内存犹如一大堆抽屉。2、需要存储多个元素时,可使用数组或链表。3、数组的元素都在一起。4、链表的元素是分开的,其中每个元素都存储了下一个元素的地址。5、数组的读取速度很快。6、链表的插入和删除速度很快。7、在同一个数组中,所有元素的类型都必须相同(都为int、double等)。常见数组和链表操作的运行时间:选择排序代码:public class SelectSort { public static void main(String[] args) { //模拟数据 i

2021-05-17 16:25:28 91

原创 算法图解笔记之第一章(二分查找,大O表示法)

二分查找是一种算法,其输入是一个有序的元素列表。二分查找的运行时间为对数时间(或log时间)。大 O 表示法指出了最糟情况下的运行时间。1、O(log n),也叫对数时间,这样的算法包括二分查找。2、O(n),也叫线性时间,这样的算法包括简单查找。3、O(n * log n),这样的算法包括快速排序——一种速度较快的排序算法。4、O(n2),这样的算法包括选择排序——一种速度较慢的排序算法。5、O(n!),这样的算法包括旅行商问题的解决方案——一种非常慢的算法。1、算法的速度指的并非时间,而

2021-05-11 16:41:17 125

原创 ConcurrentHashMap之笔记记录(1)

ConcurrentHashMap(jdk1.7版本)之笔记记录(1)1、为什么线程安全?关键概念:Segment一个segment就相当于一个hashmap,当中的hashmap类型及存储情况就等同于之前的说的hashmap,每个ConcurretHahMap中又有2的N次方个segment,所以可以这么说,ConcurrentHashMap是一个二级哈希表。在一个总的哈希表下面,有若干个子哈希表。这样的二级结构,和数据库的水平拆分有些相似。不同的segment是可以同时写入的,同一的segment

2021-02-05 14:35:53 76

原创 对HashMap底层的简单理解之笔记记录

强大的HashMap1、啥玩意????:​ 不用多说,用于存储key-value键值对的集合对吧。。。每一个键值对也可称为Entry,这些键值对分散存储在一个数组当中,这就是HashMap的主干了。​ 当然,这些数组的每一个元素的初始值都是null。2、常用方法之put、get:2.1、put:​ 最初,自己只会单纯的使用它,并不知道底层究竟发生了啥,后来,大家都会有个疑问,究竟是如何插入数据的?当键值对的索引冲突时怎么办?索引是无限增长的?初始长度以及扩容呢??????等等等。。。。​

2021-02-05 14:03:53 120 1

原创 关于MySQL中count(字段) ,count(主键 id) ,count(1)和count(*)的区别

关于MySQL中count(字段) ,count(主键 id) ,count(1)和count(*)的区别1、count(可空字段):扫描全表,读到server层,判断字段可空,拿出该字段所有值,判断每一个值是否为空,不为空则累加。2、count(非空字段)与count(主键 id)扫描全表,读到server层,判断字段不可空,按行累加。3、count(1)扫描全表,但不取值,server层收到的每一行都是1,判断不可能是null,按值累加。特别注意:count(1)执行速度比count(主键

2020-11-09 10:13:10 543 2

原创 基于java servlet jsp 实现的某某市公交线路查询系统的设计与实现

包含 论文 源代码 数据库(mysql)直接上图前端:后端:

2020-11-06 14:43:15 854

原创 MongoDB文档说明

MongoDB学习文档说明收获一、简介MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。安装包地址:https://www.mongodb.com/try/download/community安装说明及注意事项:https://www.runoob.com/mongodb/mongodb-window-install.html可视化工具:https://robomongo.o

2020-11-06 14:37:45 291

原创 xxl-job整理文档

关于xxl-job个人学习收获(后期慢慢补全)一、结构相关:xxl-job-admin:调度中心xxl-job-core:公共依赖xxl-job-executor…:执行器文件中有sql文件,运行生成库表xxl_job_lock:任务调度锁表;xxl_job_group:执行器信息表,维护任务执行器信息;xxl_job_info:调度扩展信息表: 用于保存XXL-JOB调度任务的扩展信息,如任务分组、任务名、机器地址、执行器、执行入参和报警邮件等等;xxl_job_log:调度日志表

2020-11-06 14:36:05 1112

原创 基于java servlet ssm jsp实现的某某市公交线路查询系统

论文 源代码 数据库(mysql)都有直接上图:后端:前端:qq:891725172

2020-03-12 16:42:00 518

空空如也

空空如也

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

TA关注的人

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