SpringBoot整合MyBatis之xml配置


現在業界比較流行的數據操作層框架 MyBatis,下面就講解下 Springboot 如何整合 MyBatis,這里使用的是xml配置SQL而不是用注解。主要是 SQL 和業務代碼應該隔離,方便和 DBA 校對 SQL

 

我的項目結構

 

pom.xml

添加必要的依賴

<properties>

    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <java.version>1.8</java.version>

    <mybatis-spring-boot.version>1.3.0</mybatis-spring-boot.version>

    <mysql-connector.version>5.1.39</mysql-connector.version>

</properties>

 <dependencies>

    <dependency>

        <groupId>org.springframework.boot</groupId>

        <artifactId>spring-boot-starter-web</artifactId>

    </dependency>

    <dependency>

        <groupId>org.mybatis.spring.boot</groupId>

        <artifactId>mybatis-spring-boot-starter</artifactId>

        <version>${mybatis-spring-boot.version}</version>

    </dependency>

    <dependency>

        <groupId>mysql</groupId>

        <artifactId>mysql-connector-java</artifactId>

        <version>${mysql-connector.version}</version>

    </dependency>

</dependencies>

 

application.properties

spring.datasource.url=jdbc:mysql://localhost:3306/test_spring_boot?useUnicode=true&characterEncoding=utf8

spring.datasource.username=root

spring.datasource.password=123456

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

#mybatis

mybatis.mapperLocations=classpath:mybatis/mapper/*.xml

 

注意根據自己的實現項目目錄進行相應的修改。

mapper

通過@MapperScan注解進行dao文件的掃描,此時mapper接口上不需要再加@Mapper注解,如下

// MyBatis 支持

@MapperScan("com.springboot.mybatis.mapper")

@SpringBootApplication

public class MainApplicion {

 
    public static void main(String[] args) throws Exception {

        SpringApplication.run(MainApplicion.class, args);

    }
}

 

SpringMVC整合MyBatis的區別

SpringMVC是通過xml進行配置,通過配置DataSourceSqlSessionFactoryBeanMapperScannerConfigurer來完成MyBatis的整合。

SpringBoot是通過application.properties配置數據源、mapper文件位置和@MapperScan注解來配置掃描的apper路徑,從而實現MyBatis的整合。

 

往常我們使用springboot集成webredis等依賴之所以不需要指定版本號,是因為我們引入的Maven Parent 中指定了SpringBoot的依賴,SpringBoot官方依賴Pom文件中已經指定了它自己集成的第三方依賴的版本號,對於MybatisSpring官方並沒有提供自己的starter,而是mybatisspring提供的starter依賴,所以必須跟正常的maven依賴一樣,要加版本號。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM