自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

神韵

记录、创造与成就感也许是我写博客的一个原因。当然,转载也是我对知识存储的渴望,我对别人的知识点的赞同,这也是一个原因。但是,每天早上起来在自己博客里回味、每天早上在博客海洋里进步,每天在过去的知识里又学到了新的知识,有了新的认识。这才是我写博客最大的原因

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

原创 内置锁探索,结合对象头分析内置锁(亲测,研究一段时间总结)

Table of Contents一、对象头打印信息类二、对象头介绍三、对象头的参数说明四、无锁分析四、偏向锁五、轻量级锁六、重量级锁七、带上一张自画图--内置锁sync升级过程图阅读此博客前必读:代码大家自己动手敲,不要太懒哈。我都给截图,不给代码!此篇博客大多都是基于实战验证理论过程,重点在于偏向级锁实战等几个实战。一、对象头打印信息类导入Maven...

2019-10-24 23:16:32 875 13

原创 1024~

程序员生日快乐,嘻嘻!

2019-10-24 20:42:10 650

原创 线程池超详细介绍

Table of Contents一、线程池的优势?二、四个构造方法三:线程池参数解释四、参数合理配置五、类层级关系六、创建线程池一个池并分析实例? 七、线程池的正确选择八、Java中的几种阻塞队列一、线程池的优势?重用存在的线程。减少线程创建、消亡的开销,提高性能 提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行 提高线程...

2019-10-20 13:06:25 367

原创 sync为啥是重量级锁?

此篇文章写的比较杂乱,自己总结的一些碎片知识。jdk1.6及以前,synchronized关键字修饰方法是一个重量级锁的操作内置锁synchronized与显式锁Lock解释为什么jdk1.6以前synchronized是重量级锁,性能低下的原因?为啥是重量级锁?在这个版本之前,加锁的操作是涉及到操作系统进行互斥操作,就是会把当前线程挂起,然后操作系统进行互斥操作修改...

2019-10-20 10:27:00 2660

原创 多线程基础三(重)

一、什么是进程、线程?进程:操作系统进行资源分配的最小单元线程:操作系统调度CPU的最小单元,线程都拥有各自的计数器、栈和局部变量等属性,并且还可以访问共享的内存变量。关系:一个进程可以创建多个线程二、CPU核心数和线程数的关系?假设内核2,逻辑处理器4能并行执行线程数,主要取决于逻辑处理器,4个逻辑处理器可以并行处理4个线程。但是可以并发处理几千个线程都没问题(...

2019-10-17 17:02:29 158

原创 SpringBoot十六:模板引擎Thymeleaf抽取公共页面

介绍1、抽取页面假设footer.html,语法th:fragment="copy",其中copy就是片段名,footer是模板名表明的是下面这段代码<footer th:fragment="copy"> &copy; 2011 The Good Thymes Virtual Grocery </footer>2、引入公共片段...

2019-10-15 12:44:53 395

原创 SpringBoot十五:拦截器实现-解决静态资源无法访问 SpringBoot2.0以上

登录开发期间模板引擎页面修改以后,要实时生效禁用模板引擎的缓存 spring.thymeleaf.cache=false 页面修改完成以后,ctrl+f9:重新编译 登录错误消息显示 th:text="${msg}" th:if="${not #string.isEmpty(msg)}" 登录成功,表单防止重复提交,重定向到组件,然后用组件转发拦截器1、编写拦截器...

2019-10-14 21:33:08 575

原创 SpringBoot十四:SpringBoot国际化

目录SpringBoot国际化添加链接切换国际化Locale:区域信息对象LocaleResolver:获取区域信息对象SpringBoot国际化步骤:1、需要有进行国际化的html文件2、编写国际化配置文件3、html中取国际化配置文件的值4、application.properties中开启国际化实现:1、需要有进行国际化的html文件...

2019-10-14 19:26:53 220

原创 SpringBoot十三:Web开发流程一

1、创建SpringBoot,选择Web模块,并快速编写Controller完成测试读博客:快速搭建并测试SpringBoot环境2、引入静态资源,动态资源改造页面static放静态资源:css/img/jstemplates放页面,交由模板引擎操作读博客:静态资源映射规则3、引用模板引擎引入Thymeleaf依赖读博客:Thymeleaf模板引擎简...

2019-10-14 09:23:19 179

原创 SpringBoot十二:模板引擎之Thymeleaf

模板引擎介绍常见的模板引擎下:JSP、Velocity、Freemarker、Thymeleaf(SpringBoot推荐)执行过程:模板(Template)+数据(Data)====交给模板引擎(TemplateEngine)====out写出去SpringBoot推荐的Thymeleaf模板引擎特点:语法简单,功能更强大SpringBoot Thymeleaf...

2019-10-13 23:32:06 219

原创 SpringBoot十一:SpringBoot对静态资源映射规则

SpringBoot对静态资源的映射规则动态资源映射(jar依赖)1、动态资源,所有/webjars/**请求,都去classpath:/META-INF/resources/webjars/找资源webjars:以jar包的方式引入静态资源webjars官网:https://www.webjars.org/想引入JQeury、Bootstrap等可以到官网找到对应的jar依赖...

2019-10-13 21:32:55 630

原创 SpringBoot十:日记说明(了解)

SpringBoot日记说明 SpringBoot使用的门面是SLF4j,日记实现Logback(相当于接口和实现类的意思) SpringBoot日记的级别由低到高:trace<debug<info<warn<error,如果日志级别设置为INFO,则意味TRACE和DEBUG级别的日志都看不到。 可以调整输出的日记级别,日记就只会在这个级别以后的...

2019-10-13 11:03:18 132

原创 SpringBoot九:Profile(了解)

目录Profile多Profile文件编写指定使用哪种配置文件的方式ProfileProfile就是指配置文件,一般分为开发、生产等不同的配置文件。多Profile文件编写我们主配置文件编写的时候,文件名可以是 application-{profile}.properties/yml,在开发、生产等不同环境需要不同的配置文件,并且要提前写好用时就可以切换它们...

2019-10-13 10:25:09 138

原创 SpringBoot八:配置加载位置与加载顺序(了解)

配置加载位置与加载顺序SpringBoot启动会扫描以下位置的application.properties或者application.yml文件作为SpringBoot的默认配置文件SpringBoot会从四个位置全部加载主配置文件;互补配置;如果高优先级有,则使用高优先级配置,否则则使用低优先级的配置,也就是说高优先级的配置会覆盖低优先级的配置优先级从高到低,表-file:...

2019-10-13 09:20:46 167

原创 SpringBoot七:推荐全注解方式添加组件

目录介绍下SpringBoot使用传统的XML配置文件添加组件使用SpringBoot推荐的全注解方式添加组件(JavaConfig)现在一般不使用传统的XML文件配置添加组件,而是使用就是注解方式(JavaConfig方式)添加组件SpringBoot使用传统的XML配置文件添加组件创建beans.xml文件,如下(类已经存在)<?xml version="1.0...

2019-10-12 22:58:56 191

原创 SpringBoot六:yml配置及properties配置

本篇博客主要介绍yml语法与使用,@Value和@ConfigrationProperties的选择使用一、Properties介绍.properties作为大量的使用,在配置文件中,这里不多过多介绍但是在IDEA编译器,乱码设置还是需要注意的(eclipse设置不了)Settings->Editor->File Encodings,将自动转换勾选上,乱码就解决了...

2019-10-12 17:55:04 2390

原创 SpringBoot五:配置说明

配置文件Spring Boot使用“习惯优于配置”(项目中存在大量的配置,此外还内置了一个习惯性的配置,让你无需手动进行配置)的理念让你的项目快速运行起来。所以,我们要想把Spring Boot玩的溜,就要懂得如何开启各个功能模块的默认配置,这就需要了解SpringBoot的配置文件application.properties或.ymlSpringBoot使用一个全局的配置文件,配置文件名...

2019-10-12 16:09:41 147

原创 Redis协议,简单实现Jedis客户端

说明:本人linux的redis设置了密码,所以还是选择了windows的redis,性质都一样目录一、Redis协议--RESP二、Redis协议查看及分析三、简单手写Jedis客户端一、Redis协议--RESPRedis 的客户端和服务端之间采取了一种独立名为 RESP(Redis Serialization Protocol) 的协议,作者主要考虑了以下几个点:...

2019-10-12 13:10:19 200

原创 Mysql深入六:事务(特性、解决脏读、不可重复读、幻读)

目录事务的四大特性事务的隔离级别一、事务的并发问题二、事务隔离级别查看与修改三、读未提交--脏读四、读已提交--不可重复读五、可重复读--幻读六、可串行化事务的四大特性事务特性 事务特性说明 原子性 即整个事务是一个整体,要么这个事务全部执行成功,要么全部失败 一致性 执行事务前后,数据保持一致,多个事务对同一个数据读...

2019-10-11 16:20:14 411 1

原创 Mysql深入五:Mysql底层数据结构选择与B+Tree分析

Mysql底层结构选择 B+Tree1、为什么不二分查找法作索引?解释:前提是有序,不适合做索引2、为什么不使用二叉树做索引?解释:二叉树虽然简单,但是树的高度太高,不适合用做索引3、为什么不使用平衡二叉树做索引?解释:与二叉树对比,高度会自动平衡,虽然解决了二叉树的高度问题,但是解决的不透彻,高度依然没有得到很好的改善4、为什么不使用BTree?(多路平衡数,一个节点...

2019-10-10 23:16:34 314

原创 位运算&、|、^..

2019-10-10 13:34:42 106

原创 2019.10.10 现阶段计划

距离离校的日子最多也就两个月多,说长不长,说短不短,但是感觉还有好多要学的,怎么办?先给自己加油一波,毕竟mysql/redis/jvm/aqs都已经掌握的差不多,还有SSM框架源码必须看完才能出去实习,坚持加油计划一:Spring+SpringMVC+Mybatis--------源码耗时大概20天计划二:用新学的框架SpringBoot创建个人网站,功...

2019-10-10 10:10:28 119

原创 Mysql深入四:索引优化与执行计划(十条规则 索引策略)

目录一、索引分类二、Mysql创建索引基本命令三、执行计划四、索引策略优化一、索引分类普通索引:即一个索引只包含单个列,一个表可以有多个单列索引 唯一索引:索引列的值必须唯一,但允许有空值(主键索引不允许为空) 复合索引:即一个索引包含多个列index(a,b,c)引擎:聚集索引:索引和数据存放在一起,在b+tree的叶子节点中,在mysql中也是在存放同一个文件...

2019-10-09 23:14:58 502

原创 Mysql深入三:多种优化方式

常用的Mysql优化方式服务器硬件,如机械硬盘改成固态硬盘等 MySql服务器优化,windows系统上跑着跑着就会多垃圾等,装到Linux上比较稳定 SQL本身优化,关联子查询改为--关联查询(思考,因为关联查询效率高) 反范式设计优化 索引优化(重点,下篇文章介绍)关联子查询改为关联查询子查询里面又关联==关联子查询 如果是普通的子查询,或者数据量不是很大,则不需要优...

2019-10-09 17:32:17 199

原创 Mysql深入二:开启慢查询及慢查询工具mysqldumpslow

目录一、慢查询配置,及配置项说明二、将上面的配置放入到Mysql安装目录的my.ini文件中三、修改了配置文件,需要在命令行重启一下mysql服务四、去数据库查询语句,需要超过10s的语句才会被记录,当然上面你可以自己设置慢查询的时间,从而记录,最终都会写到data目录下的DESKTOP-2EKGE5-show.log文件中,这都是上面配置文件设置的五、安装慢查询辅助工具软件A...

2019-10-09 15:57:38 511

原创 Mysql深入一:慢查询介绍

怎么发现Mysql有问题,定位问题?答:使用慢查询!慢查询概念慢查询就是用来检测Mysql性能,定位查询消耗时间长的SQL语句,从而找到它针对语句进行优化。慢查询日志,顾名思义,就是查询慢的日志,是指mysql记录所有执行超过long_query_time参数设定的时间阈值的SQL语句的记录。该日志能为SQL语句的优化带来很好的帮助。默认情况下,慢查询日志是关闭的,要使用慢查...

2019-10-09 13:50:29 221

空空如也

空空如也

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

TA关注的人

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