笔记
1.前端循环中 key的作用
当数据发生变化时 只需要重新渲染变化的数据,否则需要重新渲染全部数据。
面试题
1.什么是乐观锁 使用场景
2.sql优化
3.Spring事务的原理
主要是基于AOP(面向切面编程)实现的。
Spring事务通过AOP技术,在方法执行的前后插入事务相关的操作。
通常通过代理模式实现,及在方法执行完成后提交或回滚事务。
4.事务失效的场景
5.事务注解的参数
6.JDBC执行流程
注册驱动
建立数据库连接
创建Statement对象
执行SQL查询或更新
处理结果集
关闭资源
7.MyBatis执行流程
读取MyBatis配置文件
加载映射文件
构造会话工厂
创建会话对象
Execute执行器
MappedStatement对象
输入参数映射ParameterHandle
输出结果映射ResultHandle
8.MyBatis的四种拦截器
Executor (执行器拦截器): 拦截MyBatis执行器方法的执行
StatementHandler(语句拦截器): 拦截SQL语句的执行
ParameterHandler(参数拦截器): 拦截SQL语句的参数设置
ResultHandler(结果拦截器): 拦截从SQL语句返回的结果集的处理
9.拦截时使用反射
遇到的使用场景:在使用MyBatis参数拦截器处理参数时,使用Hutoll工具中的ReflectUtil的getField(参数对象的class类,要拦截处理的参数名)方法获得要处理的参数的值
先进行非空判断,然后使用工具类中的setFieldValue对获得的对象进行处理
10.MyBatis拦截器的执行流程
创建自定义拦截器类:实现ibatis下的Intercepter接口,重写intercepter()方法