自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序员海绵的博客

欢迎欢迎,热烈欢迎!

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

原创 Java路线图

Java 路线图

2023-07-13 00:29:42 89 1

原创 MySQL性能优化

MySQL 数据库性能优化,涉及到慢查询日志,SQL执行成本以及 EXPLAIN 命令的使用。

2023-07-13 23:02:24 309 1

原创 只克隆github仓库中的某个文件夹

只克隆github仓库中的某个文件夹

2023-07-10 16:05:33 460 1

原创 MySQL索引设计原则

介绍了MySQL11个创建索引原则和7个不适合创建索引的情况。

2023-06-20 16:25:00 78

原创 ReentrantLock之lock、unlock

尝试加锁,加锁成功就返回,失败就入队。执行完成后要唤醒队首节点。可打断原理不可打断模式我们首先来看一下不可打断模式,这也是ReentrantLock的默认模式。核心在于我们分析的selfInterrupt。该方法表面上看是要打断当前线程,但其实不然,在Java中打断当前线程,当前线程并不会立刻停止运行,只是设置一个被打断的标志,线程可以通过该标志判断自己是否被打断过,如果被打断后,则可以执行被打断的逻辑。而如果想打断当前线程,可以使用lockInterruptibly方法。if(!

2023-06-18 15:33:22 127

原创 JVM之StringTable

进行观察,可以得出,第一种会创建出一千万个String对象,然后将引用赋值给数组,虽然第二种方式也会同样多的对象,但通过intern方法,返回的是字符串1到10的引用,即数组只引用了10个String对象,剩下没有引用的会被垃圾回收掉。而7以后,常量池就放到了堆中,为了减少内存的占用,常量池中会存放对象的引用,因此执行String s4="11"时,返回的其实是s3的引用,因此结果相等。在Java中,使用"=="运算符比较字符串时,它比较的是字符串对象的引用地址,即比较它们是否指向同一个对象。

2023-06-16 13:55:44 57

原创 《数据结构(C语言版)》p282证明

∑j=1h−12h−j∙j≤(2n)∑j=1h−1j/2j≤4n\sum_{j=1}^{h-1}2^{h-j} \bullet j \leq(2n)\sum_{j=1}^{h-1} j/2^j \leq 4nj=1∑h−1​2h−j∙j≤(2n)j=1∑h−1​j/2j≤4n先证明左侧,首先通过二叉树的性质可以得出,若二叉树的高度为h,节点个数为n,则2h−1≤n≤2h−12^{h-1} \leq n \leq 2^h-12h−1≤n≤2h−1最多的情况下二叉树是满二叉树,第1层1个节点,第2

2022-05-13 01:21:35 341

原创 算法四 背包的典型用例无法停止的解决方案

问题描述:背包的典型用例代码运行起来后输入多个值推出循环计算结果,却无法退出?解决方案查看Std.isEmpty源代码,在hasNext()中加入你想输入的终止符。如:字母q。则在console中输入q,即可退出输入,计算结果。参考https://blog.csdn.net/Rex_WUST/article/details/88424076...

2022-03-24 18:52:49 74

原创 Spring 5.2.15.RELEASE源码阅读环境搭建

最近在学习Spring,看视频看的有些无聊,就想搭建环境,边跑边注释,希望可以了解的更清楚些。(当然没准以后就压根不看呢?哈哈哈环境配置idea 2019.3.1grade 5.6.4步骤1. 先去grade官网下载或者直接点击这里gradle5.6.4-all.zip下载下载完成后要配置环境,在命令行输入gradle -v,出现版本号为安装成功2.下载源码由于直接去github上下载很慢,这里推荐用gitee做中转。1. 首先登录github,找到spring项目,复制项目的h

2021-07-07 17:41:13 488

原创 Spring中Bean初始化和销毁方法执行的优先级

Spring有三对初始化和销毁方法通过@Bean注解指定initMethod和destroyMethod实现InitializingBean和DisposableBean接口使用@PostContruct和@PreDestroy那么问题来了,这三个执行的优先级是什么呢?定义一个Car类public class Car implements InitializingBean, DisposableBean { public Car() { System.out.pri

2021-07-05 17:46:46 402

转载 Eclipse常用快捷键

文章目录1. 补全代码的声明2.快速修复3. 批量包导入4. 使用单行注释5. 使用多行注释6. 取消多行注释7. 复制指定行的代码8. 删除指定行的代码9. 上下移动代码10. 切换到下一行代码空位11. 切换到上一行代码空位12. 查看源码13. 退回到前一个编辑的页面14. 进入到下一个编辑的页面(针对上面一条)15. 光标选中指定的类,查看继承树结构16. 格式化代码17. 在当前类中,显式类结构,并支持搜索指定的方法、属性等18. 批量修改指定的变量名、方法名、类名等19. 选中的结构的大小写的切

2021-04-05 10:51:41 85

转载 数学课为什么要记笔记?

1.磨练动手能力(看起来懂,写起来软)2.记笔记时不容易走神(实测有效)来源

2021-03-23 14:47:53 123

原创 thymeleaf中的select,我犯的错误

今天开发犯得低级错误。点击查找跳出错误:Field error in object ‘book’ on field ‘bookType’: rejected value [请选择图书分类]; codes [typeMismatch.book.bookType,typeMismatch.bookType,typeMismatch.java.lang.Integer,typeMismatch]; ...

2020-04-25 13:00:32 121

原创 《第一行代码》之Toolbar

面向百度编程几个小时了,终于解决了。书上给的是android.support.v7.widget.Toolbar。作者没说要导入依赖,我就没在app/build.gradle中导入。结果没运行起来,我加入后也还是没运行起来,出现了 Didn’t find class "android.support.v7.widget.Toolbar。我照例去百度,得到Android studio的SDK工具...

2020-02-02 21:13:01 390

转载 Gradle DSL method not found: 'implementation()'

#的 撒旦阿达啊 阿达ad

2020-01-21 16:01:29 5970 1

原创 第一行代码之文件存储

@TOC欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全...

2020-01-19 19:31:06 204

空空如也

空空如也

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

TA关注的人

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