开始时间:2022-04-16
课程链接:动力节点springboot
第四章 ORM 操作 MySQL
使用MyBatis框架操作数据, 在SpringBoot框架集成MyBatis
使用步骤:
-
mybatis起步依赖 : 完成mybatis对象自动配置, 对象放在容器中
-
pom.xml 指定把src/main/java目录中的xml文件包含到classpath中
-
创建实体类Student
-
创建Dao接口 StudentDao , 创建一个查询学生的方法
-
创建Dao接口对应的Mapper文件, xml文件, 写sql语句
-
创建Service层对象, 创建StudentService接口和他的实现类。 去调用dao对象的方法。完成数据库的操作
-
创建Controller对象,访问Service。
-
写application.properties文件
配置数据库的连接信息。
创建一个模块
添加的依赖有
<!--web起步依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--mybatis起步依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<!--mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--测试-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
新建文件的时候要勾选
创建实体类Student,包含三个字段 id name age
创建dao类
package com.bjpowernode.dao;
import com.bjpowernode.model.Student;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* @Mapper:告诉MyBatis这是dao接口,创建此接口的代理对象。
* 位置:在类的上面
*/
@Mapper
public interface StudentDao {
Student selectById(@Param("stuId") Integer id);
}
首先明确这个注解Param是为SQL语句中参数赋值而服务的。原文链接
@Param的作用就是给参数命名,比如在mapper里面某方法A(int id),当添加注解后A(@Param(“userId”) int
id),也就是说外部想要取出传入的id值,只需要取它的参数名userId就可以了。将参数值传如SQL语句中,通过#{userId}进行取值给SQL的参数赋值。
写StudentDao.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">
<mapper namespace="com.bjpowernode.dao.StudentDao">
<!--定义sql语句-->
<