Mybatis Starting基于Spring Boot

前面几篇讲了官方方式配置Mybatis、集成Spring方式配置Mybatis、利用Spring JavaConfig配置Mybatis;而今天则学习基于Spring Boot来配置Mybatis。

认识Spring Boot

Spring boot存在的意义:
Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。
简单来说就是以往用Spring来整合第三方组件,我们可能需要去做很多配置,而Spring Boot的出现是为了使用项目的组件的整合变得更容易,基于Spring Boot,开发都可以很快成形一个Spring应用。

继续深入Spring Boot

  • 它使用 “约定优于配置” 的理念让你的项目快速运行起来。
  • 它并不是什么新的框架,而是默认配置了很多框架的使用方式,就像 Maven 整合了所有的 jar 包一样,Spring Boot 默认支持所有流行框架的集成,而这一切我们几乎可以不做什么配置,因为spring boot对很多流行的框架的配置作了默认约定。
  • Spring boot比较核心的自动配置特性正是为了支持约定大于配置这一理念,我们开发者也可以利用这一特性来自定义一个自动配置的组件。

Spring boot替换掉了Spring?

spring boot并不是替换掉了spring,spring boot只是对Spring的整合能力、Spring应用的快速成形能力作了提升,真正管理组件的还是Spring的IOC容器。你可以这么理解:Spring Boot是Spring的一双翅膀,它让Spring飞了起来。

使用Spring Boot快速整合Mybatis

有点意外的Spring boot官方auto-config并没有特意整合Mybatis,但是借用spring boot的自动配置扩展能力,网上已经有人弄了一个mybatis-spring-boot-starter,所以只需引入这个starter就把spring boot和mybatis打包过来了,并且也已经完成了自动集成。
所以我们会发现只要是流行的框架,即便spring官方没有作自动配置适配,网上也会有其它组织或个人已经有人做了,所以我们也不用自己去造轮子作适配,当然后续博客我会造一个小轮子,以便让大家更好体会自动配置的妙用。

示例代码及配置如下:
gradle引入方式:

compile "org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.2"

application.yml配置

## 仅仅给一个数据源即可,其它会有默认配置
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/blog?useUnicode=true&characterEncoding=utf8
    username: root
    password: 123456

mybatis:
  mapper-locations: classpath:org/wbw/mybatisplus/mapper/*.xml
  type-handlers-package: org.wbw.mybatisplus.handler

应用启动代码

package org.wbw.mybatisplus;


import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.wbw.mybatisplus.entity.Blog;
import org.wbw.mybatisplus.mapper.BlogMapper;

@SpringBootApplication
@MapperScan(basePackages = "org.wbw.mybatisplus.mapper")
public class MybatisSpringBootApp {

    public static void main(String[] args) {

        // 启动Spring boot应用
        ApplicationContext applicationContext = SpringApplication.run(MybatisSpringBootApp.class, args);

        // 启动完成之后,拿到Mapper访问下数据库
        testQuery(applicationContext);

    }

    private static void testQuery(ApplicationContext applicationContext) {
        BlogMapper blogMapper = applicationContext.getBean(BlogMapper.class);
        Blog blog = blogMapper.selectBlog(6);
        System.out.println(blog);
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值