MyBatis + SpringMVC 总结
一. MyBatis 环境的搭建
-
创建 MyBatis 的主配置文件(mybatis-config.xml):环境,事务管理,数据源
-
给类取别名
-
配置支持懒加载
-
创建接口以及接口的映射文件(UserMapper,UserMapper.xml)
-
接口的全路径和映射文件中 mapper 标签的 namespace 属性保持一致
-
接口的方法名和映射文件中具体的标签名(insert,select,update,delete) ID 值保持一致
-
读取
new SqlSessionFactoryBuilder().build(is)配置文件创建 SqlSessionFactory,从而创建SqlSession.openSession()方法 -
通过 SqlSession 来调用具体的方法
-
sqlSession.getMapper(UserMapper.class).addUser(); -
提交事务,关闭 sqlSession
二. MyBatis 关系的配置
- 多对一:association
- 一对多:collection
- 一对一:association
- 多对多:collection
三. MyBatis 懒加载的配置
-
正常关联查询:
-
懒加载
-
只有一条 SQL 查询语句
-
查询学生时,有两条 SQL 语句
-
动态 SQL
if、where、set、forEach、trim
四. SpringMVC 环境的搭建
-
在
web.xml中配置 SpringMVC 的中央控制器 dispatcherServlet 拦截所有匹配的请求路径,配置读取 SpringMVC 核心配置文件的路径 -
配置 SpringMVC 核心配置文件
/ .jsp org.springframework.web.servlet.view.JstlView 10485760 UTF-8 -
创建 Controller,UserController(创建方法method,addUser)
@Controller、@RequestMapping、@RequestParam、@ResponseBody
五. SpringMVC 组件
- DispatcherServlet:中央控制器
- HandleMapping:映射处理器
- Controller:控制器
- ViewResolver:视图解析器
- ModelAndView:模型和视图对象
六. SpringMVC 工作原理
- Tomcat 启动时会读取
web.xml,加载 DispatcherServlet,并实例化中央控制器 - 客户端发送一个请求到服务器,Tomcat 会接收这个请求
- 判断请求是否符合 DispatcherServlet 的请求路径
- 若符合,则 DispatcherServlet 会调用 HandleMapping 把请求交给对应的 Controller 处理
- Controller 处理完请求之后,会返回一个 ModelAndView 对象给 DispatcherServlet
- DispatcherServlet 调用 ViewResolver 把 ModelAndView 解析成视图页面