今天給大家介紹如何在Spring Boot中使用MyBatis就珠,希望大家喜歡。
1. 創(chuàng)建項目
關于如何創(chuàng)建Spring Boot的項目剩晴,大家可以參考我的《Hello Spring Boot》里面有詳細介紹。
2. 導入依賴
在Spring Boot中使用MyBatis主要用到了三個依賴:MyBatis和Spring Boot 整合依賴、MySQL驅(qū)動依賴载碌、Druid依賴⌒品悖基于本文還需要另外兩個依賴:jsp解析器嫁艇、lombok。下面展示一下我的pom文件:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<!--MyBatis和Spring Bot整合框架-->
<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>
<!--mysql驅(qū)動依賴-->
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- Druid依賴-->
<!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.22</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<resources>
<!--注冊webapp資源目錄-->
<resource>
<directory>src/main/webapp</directory>
<targetPath>META-INF/resources</targetPath>
<includes>
<include>**/*.*</include>
</includes>
</resource>
<!--注冊dao包下mybatis映射文件為資源目錄-->
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
org.mybatis.spring.boot 這個依賴的版本號是不能省去弦撩,因為這個依賴是MyBatis整合的Spring Boot裳仆,而不是Spring Boot整合的它,所以不能省掉孤钦。
resources中的兩個配置分別是注冊webapp為資源目錄歧斟、注冊MyBatis的資源目錄纯丸。
看到這么多依賴肯定有小伙伴問,我是從哪里知道的静袖,大家可以訪問這個網(wǎng)址查找觉鼻。
3. 創(chuàng)建Jsp
如何在Spring Boot中使用Jsp大家可以參考《Spring Boot 使用jsp》創(chuàng)建兩個jsp文件分別是:index.jsp、success.jsp他們用來提交表單和展示結(jié)果队橙。
<%--
Created by IntelliJ IDEA.
User: zhangxianwei
Date: 2020/4/12
Time: 12:55 下午
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form action="register" method="post">
詩句:<input type="text" name="verse" style="width: 200px">
<br>
<br>
作者:<input type="text" name="author" style="width: 200px">
<br>
<br>
<input type="submit" value="提交">
</form>
</body>
</html>
<%--
Created by IntelliJ IDEA.
User: zhangxianwei
Date: 2020/4/12
Time: 1:26 下午
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h5>提交成功</h5>
</body>
</html>
4.創(chuàng)建數(shù)據(jù)庫
使用Navicat創(chuàng)建了一個poetry的表:5.創(chuàng)建實體類
在項目的包名下創(chuàng)建一個目錄名為:bean,再創(chuàng)建一個PoetryBean的類:
package com.zxw.mybatis.bean;
import lombok.Data;
@Data
public class PoetryBean {
private Integer id;
private String verse;
private String author;
}
6.創(chuàng)建dao層
在項目的包名下創(chuàng)建一個目錄名為:dao坠陈,再創(chuàng)建一個接口PoetryDao,不要忘記加上@Mapper注解捐康。
package com.zxw.mybatis.dao;
import com.zxw.mybatis.bean.PoetryBean;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface PoetryDao {
void insertVerse(PoetryBean poetryBean);
}
然后在resources目錄下創(chuàng)建與其對應的配置文件:PoetryDao.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.zxw.mybatis.dao.PoetryDao">
<insert id="insertVerse">
INSERT INTO poetry(verse,author ) VALUES (#{verse},#{author})
</insert>
</mapper>
首先這里面的id要和上面的方法一一對應仇矾,然后再寫SQL語句就好了,這里推薦一個MybatisX的插件(類似于eventbus3-intellij-plugin這個插件)解总,裝上這個插件就可以直接定位到xml防止寫錯贮匕,而且這個插件很強大,感興趣的去它的官網(wǎng)花枫。
7.創(chuàng)建service
在項目的包名下創(chuàng)建一個目錄名為:service刻盐,再創(chuàng)建接口PoetryService:
package com.zxw.mybatis.service;
import com.zxw.mybatis.bean.PoetryBean;
public interface PoetryService {
void addVerse(PoetryBean poetryBean);
}
創(chuàng)建實現(xiàn)類PoetryServiceImpl:
package com.zxw.mybatis.service;
import com.zxw.mybatis.bean.PoetryBean;
import com.zxw.mybatis.dao.PoetryDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class PoetryServiceImpl implements PoetryService {
@Autowired
PoetryDao poetryDao;
@Override
public void addVerse(PoetryBean poetryBean) {
poetryDao.insertVerse(poetryBean);
}
}
這個類中不要忘記加上@Service這個注解,我當時就是忘記加而報錯了劳翰。
8.創(chuàng)建Controller
在項目的包名下載創(chuàng)建一個目錄名為:controller敦锌,再創(chuàng)建類PoetryController:
package com.zxw.mybatis.controller;
import com.zxw.mybatis.bean.PoetryBean;
import com.zxw.mybatis.service.PoetryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
@Controller
public class PoetryController {
@Autowired
private PoetryService poetryService;
@PostMapping("/register")
private String registerVerse(PoetryBean poetryBean) {
poetryService.addVerse(poetryBean);
return "success";
}
}
這個段代碼就是當詩詞提交成功后,返回success這個jsp用來通知提交成功佳簸。
9.配置
在application.properties文件中做一下配置:
# 視圖的前輟與后輟
spring.mvc.view.prefix=/
spring.mvc.view.suffix=.jsp
# 注冊映射文件
mybatis.mapper-locations=classpath:PoetryDao.xml
# 注冊實體類別名
mybatis.type-aliases-package=com.zxw.mybatis.bean
# 注冊數(shù)據(jù)源類型
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
# 連接數(shù)據(jù)庫
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql:///db1
spring.datasource.username=root
spring.datasource.password=zxw12345
10.檢查
運行項目添加詩句檢查結(jié)果如圖:
總結(jié)
以上就是在Spring Boot中使用MyBatis詳細步驟乙墙,總結(jié)如下:
- 在pom文件找那個添加:MyBatis與Spring Boot整合依賴、MySQL驅(qū)動依賴生均,和Druid依賴听想。
- 在配置文件中添加:映射文件、實體類別名疯特,及數(shù)據(jù)源哗魂。
- 在Dao接口上添加@Mapper注解。
項目地址:HelloSpringBoot