01 2023 档案
摘要:注解 还记得刚开始学注解时,很天真。傻傻以为创建一个注解类,加到类、方法、属性上就能有某种功能。 现在对注解的理解很简单:标记,可以被程序读取到的标记!(注释是程序不会去执行的) 如果我们单单创建一个注解放到类或方法上面,此时并无啥用,只有编写类通过反射的手段去读取类或方法上的注解,再进行我们自己的
阅读全文
摘要:概念 Aop原指面向切面编程。但在spring中对aop的实现指的是: 对方法执行前后加入其它逻辑代码,达到增强方法的目的 spring-aop的底层实现 一般实现aop,有两种方案: JDK动态代理 cglib代理 spring中两者都可使用,默认使用JDK动态代理。具体如何实现不作讨论,本文仅讲
阅读全文
摘要:分页查询优化 最简单的select分页是这样的: select * from user limit 2000,10 mysql实际上会默认 order by id asc,然后再进行limit。这个有个问题是先对user表的所有数据排好序了再进行limit,其他页的数据不是自己想要的但也排序浪费时间
阅读全文
摘要:索引失效的常见场景 不符合最佳左前缀原则 比如说现在创建一个联合索引:index_union(name,age),然后你的select语句是这样的 select * from user where age = 18 此情况下并不会触发index_union,因为where没使用上name 查询语句中
阅读全文
摘要:explain mysql提供了一种方式,目的是为了让我们知道sql的执行顺序、索引使用情况、执行效率的情况 table table是展示执行计划过程中,会使用到的表。 执行explain出现的每条记录都会对应一张单表(可能是存在表,可能是临时表) id 执行explain后,处于同一个select
阅读全文