目录
一、 前言
V(View) -> JSP ->html+thymeleaf
C -> Springmvc
M -> SpringJDBC ->Mybatis(多表)
Mybatis是一个半自动的ORM持久层框架(持久层:连接数据库),内部封装了JDBC
全自动Hibernate把SQL封装好了,半自动Mybatis(更好优化SQL)
二、Mybatis入门案例
1.引入依赖包
提示:这是以Springboot那篇里的代码为基础
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.20</version>
</dependency>
引入mybaits、mysql依赖包
2.mybatis的连接工作
内部封装了JDBC,不用写代码,但需要在application.properties中进行配置
3.查询
(1)dao
在dao下创建PersonMapper接口,写一个findAllPerson方法
(mybatis中命名习惯为结尾加mapper,而不是dao)
mybatis的实现类是要写到配置文件中的,所以创建一个配置文件
PersonMapper.xml文件中,命名空间如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
(2)service
service层很简单,和之前一样
(3)controller
创建一个PersonController的类,
@Controller
public class PersonController {
@Autowired
PersonService personService;
@RequestMapping("personlist")
public String personlist(Model model){
model.addAttribute("personlist",personService.findAllPerson());
return "personlist.html";
}
}
提示:类创建好后先加注解
(4)前端页面
创建一个personlist.html文件
(5)结果
4.删除
(1)dao
添加一个deletePersonById方法
(2)PersonMapper.xml
在文件中加入上述语句
如果方法返回值是基本类型,可省略resultType。parameterType配置参数的类型。 #{id}表达式是参数
service层很简单不多概述
(3)controller
(4)前端页面
(5)结果
5.增加
(1)dao
(2)PersonMapper.xml
如果参数是对象类型,对象类型可省略
service层很简单不多概述
(3)controller
(4) 前端新建addperson.html
(5)结果
6.修改
(1)dao
(2)PersonMapper.xml
(3)controller
(4)前端
新建一个updateperson.html文件
修改personlist.html文件
(5)结果