zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    项目分析-纷享车链AutoChain的数据保险柜解读
    AutoChain纷享车链背后的技术支撑——Higgs Chain 的生态体系解读
    纷享车链AutoChain首创之数据保险柜的解读
    实业落地的区块链车联网-纷享车链AutoChain项目非官方解读
    第三方测评:IOV智能车链&CarBlock&阿尔法车链&第一车链&纷享车链
    区块链如何赋能车联网-Higgs Chain
    BTC挖矿成本¥36599.29,市价¥41,598.25——五大币种挖矿成本分析 2018-07-13
    驾图&IOVC背后的公链技术-Higgs Chain全方位解读(一)
    进军区块链前必读!!BTC挖矿成本¥36554.13,市价¥43697.44——五大币种挖矿成本分析 2018-07-10
    驾图挖矿IOVC的背后HiggsChain第一期周报解读,有实际落地应用的公链足以对标ETH?
  • 原文地址:https://www.cnblogs.com/GumpYan/p/14752447.html
Copyright © 2011-2022 走看看