xml方式整合mybatis

1.导入依赖

在pom.xml中添加依赖

<!--        mysql驱动-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

<!--        druid连接-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.10</version>
        </dependency>

<!--        mybatis-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>

2.编写配置文件

2.1 准备实体类

可以在IDEA中添加database,通过两张表,可以直接创建在entity包中的实体类

 连接上数据库后

这样就创建了Air和District两个类

 Air.java

@Data
public class Air {

  private long id;
  private long districtId;
  private java.sql.Date monitorTime;
  private long pm10;
  private long pm25;
  private String monitoringStation;
  private java.sql.Date lastModifyTime;

}

  District.java

@Data
public class District {

  private long id;

  private String name;

}

2.2 准备mapper接口

import com.company.firstspringboot.entity.Air;

import java.util.List;

public interface AirMapper {
    List<Air> findAll();
}

  在启动类中加入扫描AriMapper接口所在的包

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan(basePackages = "com.company.firstspringboot.mapper")
public class FirstSpringbootApplication {

    public static void main(String[] args) {
        SpringApplication.run(FirstSpringbootApplication.class, args);
    }

}

2.3 准备映射文件,创建对应mapper接口的映射文件

AirMapper.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.company.firstspringboot.mapper.AirMapper">
    <select id="findAll" resultType="Air">
        select * from air
    </select>
</mapper>

添加yml配置信息(指定连接数据库信息和mybatis配置)

application.yml

server:
  port: 8080
  servlet:
    context-path: /

# 连接数据库的信息
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql:///air?serverTimeZone=UTC
    username: root
    password: 123456
    type: com.alibaba.druid.pool.DruidDataSource

# MyBatis配置
mybatis:
  # 扫描映射文件
  mapper-locations: classpath:mapper/*.xml
  # 配置别名扫描的包
  type-aliases-package: com.company.firstspringboot.entity
  configuration:
    # 开启驼峰映射配置
    map-underscore-to-camel-case: true

3.测试

直接在接口上右键选择GO TO,会自动创建当前接口的测试类,在test目录下

让当前测试类,继承FirstSpringbootApplicationTests测试类(注意:要在FirstSpringbootApplicationTests的class前,添加public)

AirMapperTest.java

import com.company.firstspringboot.FirstSpringbootApplicationTests;
import com.company.firstspringboot.entity.Air;

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;

class AirMapperTest extends FirstSpringbootApplicationTests {

    @Autowired
    private AirMapper airMapper;

    @Test
    void findAll() {
        List<Air> all = airMapper.findAll();
        for (Air air : all) {
            System.out.println(air);
        }
    }
}

  

 结构:

 

选择的依赖:https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter

posted @ 2021-05-10 19:12  GumpYan  阅读(97)  评论(0编辑  收藏  举报