Spring Boot学习笔记(四)与mybatis的合体

1.pom.xml的配置(spring boot配置已有)

驱动包、连接池(还不知道啥意思),org.mybatis.spring.boot, 日后补足吧。

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.11</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.12</version>
        </dependency>
        <!-- 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>1.3.2</version>
        </dependency>

2. 创建映射xml的Dao类文件(注意是@Mapper),写@Repository的话要自己写和映射文件的配置。

package org.test.dao;

import org.apache.ibatis.annotations.Mapper;
import org.test.entity.TestTable;

import java.util.List;

@Mapper
public interface TestTableDao {

      List<TestTable> findAll();

      void insert (TestTable testTable);
}

3. 新建mybatis映射文件(mapping) 注意namespace是上面Dao类的命名空间

<?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="org.test.dao.TestTableDao">

    <select id="findAll" resultType="testTable">
        select  id,`name` from testtable
    </select>

    <insert id="insert" parameterType="TestTable">
        insert into testtable(`name`)value(#{name})
    </insert>
</mapper>

 4. Service和Controll层都没变化。

5. 要在springboot的配置文件中增加数据库连接配置和mybatis的配置

数据库连接注意时区、中文乱码、useSSL验证、多行操作等配置。

server:
  port: 8080

spring:
    datasource:
        name: test
        url: jdbc:mysql://localhost:3316/demo?useSSL=false&useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&allowMultiQueries=true
        username: root
        password: root
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver


mybatis:
  mapper-locations: classpath:mapping/*.xml  #对应mapper映射xml文件的所在路径
  type-aliases-package: org.test.entity  # 对应实体类的路径

6. 遇到的自坑问题

提示语法错,还是得仔细看看语法

扫描二维码关注公众号,回复: 4604758 查看本文章

猜你喜欢

转载自blog.csdn.net/baitianmingdebai/article/details/85059198