摘要: 一、AOP(Aspect Orient Programming,面向切面编程)相关术语: 1. 切面(Aspect):实现通用问题的类,例如日志,事务管理,定义了切入点和通知的类,通知和切入点共同组成了切面:时间、地点、做什么 2. 通知(Advice):类似Spring拦截器或者Servlet过滤 阅读全文
posted @ 2019-08-10 11:57 牧云文仔 阅读(1538) 评论(0) 推荐(0) 编辑
摘要: 一、查询语句优化 mysql通过explain语句,可以分析一条查询语句的执行信息,例如是否命中索引,然后优化查询语句 二、子查询优化 尽量用Join代理子查询,因为子查询会建立临时表,有系统开销 三、使用索引 1. like关键字匹配,不会使用索引 2. or关键字必须两遍都建立了索引,才会用到索 阅读全文
posted @ 2019-08-10 11:01 牧云文仔 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 一、 二、 三、mybatis原理 1. 静态代理和动态代理 a. 静态代理可以为一个接口生成一个代理类,代理类去操作这个接口的具体实现类 b. 动态代理可以为多个接口生成同一个代理类,代理类去操作这个接口的具体实现类, 通过拦截器方法的回调,对目标target方法进行增强 2. mybatis使用 阅读全文
posted @ 2019-08-10 10:22 牧云文仔 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 一、背景 直接从数据库查询所有数据,耗时、耗内存,改为分页查询部分数据 二、常规分页查询 1. mysql: limit 从第m条数据开始,查询n条数据 select * from table limit m,n 2. sql server: top+子查询 3. 原理:从数据库的第一条记录开始扫描 阅读全文
posted @ 2019-08-10 10:21 牧云文仔 阅读(2103) 评论(0) 推荐(0) 编辑
摘要: 一、简介 序列化:将Java对象转换为字节数组,便于存储或者传输 反序列化:将字节数组转换为Java对象 二、使用 1. 将Java类实现Serializable接口 2. 实现Externalizable接口,重写readExternal()、writeExternal()方法,可以指定哪个字段序 阅读全文
posted @ 2019-08-10 10:18 牧云文仔 阅读(512) 评论(0) 推荐(0) 编辑