3 吴一尘

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 8w+

数据库的执行计划

从数据库的执行计划来谈谈SQL优化本文分4个章节:1.分析SQL语句的执行流程。2.分析explain执行计划中每个列的含义。3.针对explain列的含义来进行索引优化,4.优化总结文章目录从数据库的执行计划来谈谈SQL优化1.SQL语句的执行流程2.执行计划解析1. id 列2. select_type 列3. table 列4. type 列5. possible_keys 列6. key 列7. key_len 列8. ref 列9. rows 列10. filtered 列11. extra

2020-06-07 00:09:41

HashMap在JDK1.7和1.8主要区别

HashMap在JDK1.7和1.8主要区别public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable首先从声明上来看,HashMap继承自AbstractMap 实现了Map、Cloneable、Serializab...

2020-04-15 15:51:08

List集合源码解析

java集合之List集合源码解析1.为什么会有集合的概念​ 数组在声明的时候就需要固定大小,集合不是可以扩容。Java集合就像一个容器,可以存储任何类型的数据,也可以结合泛型来存储具体的类型对象。在程序运行时,Java集合可以动态的进行扩展,随着元素的增加而扩大。​ 集合的继承关系如下:​ List集合可以存储有序且可重复的数据。有序指的是:集合保存了元素的插入顺序,可重复表示的是...

2020-04-14 15:27:57

关于ajax不同方式的传值类型及接受方式

关于ajax不同方式的传值类型及接收方式1.传值先看看ajax的基本格式$.ajax({ url: "", type:"", dataType"", contentType:"", data: , success:function(res){ }})url:传值的地址type:传值类型 GET/POSTdata...

2019-09-12 17:48:58

Spring Boot 集成Mybatis

Spring Boot 集成Mybatis​ 首先在SpringBoot的配置文件application.yml(application.properties)中datasource: url: localhost:3306/testspring: datasource: # 数据库配置 driver-class-name: com.mysql.jdbc.Dr...

2019-07-26 18:27:44

Spring Boot中的注解

Spring Boot中的注解​ 实际开发过程中Spring Boot常用的注解有以下几个@RestController@RequestMapping@PathVariable@RequestParam@RequestBody@RestController 是spring boot新增的一个注解,这是注解是很多注解的集合,点开之后发现:@Target(Ele...

2019-07-26 18:26:53

vue+iview 分页及查询功能实现

vue+iview 分页及删、查功能实现​ 首先要想实现分页功能必须得知道 当前页码、每页大小、总数目。iview对分页的功能支持还是很强大的,有很多钩子函数具体实现看后端返回的数据<template> <div v-if="this.$store.state.user.userType == 0 || this.$store.state.user.userTyp...

2019-07-01 11:12:01

vue+iview文件上传(base64编码,类型验证和大小限制)

vue+iview文件上传(base64编码、类型验证、大小限制、多文件上传及文件预览)​ iview对文件上传提供了一个专门的标签Upload,不过这个标签默认需要一个接口action属性,但一般我们向后台上传文件并不会选择文件直接就上传了 而是需要和其他的值一起发送请求给后台,并且文件都是转成base64编码。​ iview提供了一个方法阻止默认上传:before-upload这个方法是在...

2019-07-01 11:10:35

进程和线程的详细解读

进程和线程背景:当我们执行一段代码,运行一个程序的时候,这个程序所需要的资源必须到位(显卡,GPS之类的),我们将除了CPU之外的PC资源统称为程序的上下文。一个电脑中会有多个任务同时执行,每个任务的时间片(CPU的分配时间)是定义好的,当任务的时间片用完之后,就会被切换出去,等待下一次CPU的到来。(所以说电脑中的任务看似是同时执行的,其实是CPU切换的速度很快—这是对于单核处理器而言)程...

2019-04-16 16:18:02

JVM虚拟机学习二、虚拟机内存模型(JDK1.8)

JVM虚拟机学习二、虚拟机内存模型(JDK1.8)基于JDK1.8,HostPot虚拟机JVM运行时内存模型(1.8)先说说与JDK1.7之前的区别:没有了方法区,取而带之的是元空间(这么说不标准,方法区只是JVM规范的概念,并不实际存在。)原来方法区中的运行时常量池中的字符串常量池,静态变量,都存在于堆中了。(注意是字符串常量池存放于堆中,并不是运行时常量池!)方法区中其余的(例...

2019-04-16 16:16:06

JVM虚拟机学习一、类加载机制

JVM虚拟机学习一、类加载机制1.类的加载过程​ 类从加载到虚拟机内存到卸载出内存的过程中,一共经历了加载、验证、准备、解析、初始化、使用、卸载这几个阶段,其中准备、验证、解析3个部分统称为连接。​ 加载、验证、准备、初始化、卸载,这五个阶段的顺序是一致的,而解析过程则不一定,它在某些情况下在初始化阶段之后在进行,这是为了支持Java的运行时绑定。(关于运行时绑定:https://www.c...

2019-04-16 16:13:34

关于String的赋值创建和new String的过程的解读

关于String的创建过程和intern()解释1.字面值和new创建​ String:不可改变的Unicode字符序列,它的创建是一种池化思想,把需要共享的数据放在池中,用一个存储区域来存放一些公用资源以减少存储空间的开销。String类的数据都会存放在字符串常量池中,JDK1.7后该常量池被移到了堆中! String s1 = "HelloWorld"; String s2=new...

2019-04-16 16:10:44

简单说说mysql的索引

详解mysql索引原理及查询优化1.什么叫索引?​ 索引在MYSQL中也叫“键”,是存储引擎用于快速找到记录的一种数据结构。索引对于良好的性能非常关键,当数据量越来越大时,索引对于性能的影响愈发重要,索引优化查询性能,能够轻易将性能提高好几个数量级。2.出现的原因​ 索引的目的在于提高查询效率,和查阅图书用的目录一样,先定位到章,节,页数。​ 本质都是:通过不断缩小数据的范围来筛选出所需...

2019-04-14 10:33:18

java泛型详解(1)

为什么要使用泛型?一般的类和方法,只能使用具体的类型;要么是基本类型,要么是自定义类。如果我有这种需求:可以应用于多种类型的代码。该怎么办? 1. 创建多个class文件,从而可以创建多个不同类型的对象;缺点很明显:代码臃肿,重用性不高 2. 创建一个类文件,给这个类中的成员变量设置Object数据类型;编译期可能会通过,运行时有可能发生异常ClassCastException一般...

2019-04-14 10:31:20

浏览器和服务器之间如何编码解码

浏览器和服务器之间如何编码解码1.浏览器和服务器之间编码解码的过程​ 从上图可以看出,有两个过程是我们可以干预设置的,只有当上面两个过程编码格式相同的时候,才不会出现乱码!2.详细剖析get方式编码解码及乱码方式​ 对于GET方式而言:它是将数据附在URL后面进行传输的,这样就很容易出现乱码,因为值有可能传递的是非ASCII吗(HTTP协议是ASCII码传输的,建立在 TCP/IP 协议...

2019-04-14 09:48:12

Spring框架学习二(AOP事务)

Spring框架学习二(AOP事务配置)​ 由于框架的不同相应事务的操作代码不相同,故在Spring的事务处理中,通用的事务处理流程框架是由抽象事务管理器AbstractPlatformTransactionManager来提供的,而具体的底层事务处理实现,由PlatformTransactionManager的具体实现类来实现,如 DataSourceTransactionManager 、J...

2019-04-14 09:44:39

Spring框架学习一(IOC、DI、注入、AOP思想)

Spring框架学习一(IOC、DI、注入、AOP思想)文章目录Spring框架学习一(IOC、DI、注入、AOP思想)1.控制反转IOC和依赖注入DI2.注入的实现和注解2.1.实例化bean2.2.bean属性注入3.spring整合junit测试4.Spring的AOP思想1.Servlet中AOP的体现2.Spring中的AOP实现1.控制反转IOC和依赖注入DI​ 首先了解到Spr...

2019-04-14 09:41:49

Mybatis中的一级缓存和二级缓存

Mybatis中的一级缓存和二级缓存​ 先说缓存,合理使用缓存是优化中最常见的,将从数据库中查询出来的数据放入缓存中,下次使用时不必从数据库查询,而是直接从缓存中读取,避免频繁操作数据库,减轻数据库的压力,同时提高系统性能。一级缓存​ 一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个数据结构用于存储缓存数据。不同的sqlSession之...

2019-04-14 09:35:55

SpringMVC的基本运行流程

SpringMVC的基本运行流程​ 先通过一张图片来了解SpringMVC的基本流程具体的执行流程:客户端向服务器端发送url请求,请求被前端控制器捕获(通过Servlet-mapping中的url-pattern标签设置)<servlet-mapping> <servlet-name>springmvc</servlet-name> &l...

2019-04-14 09:33:04

Mybatis的基本运行流程

Mybatis基本运行流程总结JDBC的问题:1、数据库连接创建、释放频繁造成系统资源浪费,从而影响系统性能。如果使用数据库连接池可解决此问题。2、Sql语句在代码中硬编码,造成代码不易维护,实际应用中sql变化的可能较大,sql变动需要改变java代码。3、使用preparedStatement向占有位符号传参数存在硬编码,因为sql语句的where条件不一定,可能多也可能少,修改sql...

2019-04-14 09:30:59

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。