文章目录
- - -知识拓展- - -
1 Tomcat
你好
2 计算机原理
你好
- - -Spring技术- - -
1 知识拓扑
Spring技术知识拓扑
2 Mybatis
2.1 Mybatis工作原理
① 读取mybatis-config.xml配置文件;
② 加载SQL映射文件(在mybatis-config.xml中加载);
③ 构造会话工厂SqlSessionFactory对象;
④ 根据会话工厂创建SqlSession对象,该对象有Executor执行器;
⑤Executor执行器接口中,其成员方法有MappedStatement参数,该参数用来存储映射的SQL语句的id、参数等信息;
⑥ Executor执行器,根据SqlSession传递的参数生成SQL语句,维护查询缓存。
2.2 一级缓存和二级缓存
2.2.1 一级缓存
一级缓存是SqlSession范围的缓存,调用SqlSession修改,添加,删除,commit(),close()方法时,会清空一级缓存。
如下图,查询id为1的信息,先查询缓存,若缓存中不存在,则查询数据库,并将信息存到一级缓存。若执行commit操作,则清空一级缓存,让缓存中存储最新信息,避免脏读。
2.2.2 二级缓存
二级缓存是mapper映射级别的缓存,多个SqlSession操作一个sql语句,共用其二级缓存,mybatis二级缓存默认为开启,修改参数cacheEnabled可设置关闭。
如下图,sqlsession1查询用户信息,并存到二级缓存中。sqlsession2查询相同信息,首先查询缓存,如果存在则从缓存中取数据。sqlsession3执行相同sql,执行commit提交,将会清空二级缓存区域的数据。
3 Vue与react
你好
4 Ajax->Java/Servlet->DB
你好
5 Restful思想
你好
6 SpringBoot
你好
7 AOP
你好
8 IOC
你好
9 注解
9.1 概述
1. 定义
注解,也叫元数据,即一种描述数据的数据。本质上来说,注解一种特殊的注释。
2. 用途
① 生成文档,生成javadoc文档;
② 编译检查,编译期间进行检查验证;
③ 编译时动态处理,例如动态生成代码;
④ 运行时动态处理,例如使用反射注入实例。
3. 分类
① Java自带注解,包括@Override、@Deprecated和@SuppressWarnings;
② 元注解,用于定义注解的注解,包括@Retention、@Target、@Inherited、@Documented;
③ 自定义注解。
9.2 元注解
元注解 | 作用 |
---|---|
@Retention | 描述注解的生命周期 |
@Documented | 将注解中元素输出到Javadoc |
@Target | 描述注解的修饰范围 |
@Inherited | 类继承时,子类会继承父类使用的注解中被@Inherited修饰的注解 |
9.1 常用注解
注解 | 作用 |
---|---|
@ResponseBody | 将返回的Java对象转换为JSON格式 |
@RequestBody | 将读到的内容(json数据)转换为java对象并绑定到Controller方法的参数上。 |
@RequestMapping | 标识 http 请求地址与 Controller 类的方法之间的映射。 |
@Transactional | 用于给service方法添加事务,其事务的开启需要基于接口或者类的代理被创建 ,同一个类中方法A调用有事务的方法B,事务不会起作用。 |
@Param | 限定mapper中的变量名,起规范作用。 |