springBoot与MyBatis整合示例

原创 2017年01月03日 21:44:22

springBoot与MyBatis整合示例

MyBatis的配置的一般步骤:

  1. 数据源的配置
  2. 配置MyBatis的映射xml
  3. 配置mybatis的sqlSessionFactory

Mybatis的相关jar

以下是gradle的引jar的包的方式:

complie "org.springframework.boot:
spring-boot-starter-jdbc:1.2.3.RELEASE"
compile "org.mybatis:mybatis:3.2.8"
compile "org.mybatis:mybatis-spring:1.2.1"
compile "com.alibaba:druid:1.0.13"
compile "mysql:mysql-connector-java:5.1.35"
compile "com.alibaba:fastjson:1.1.41"

使用springBoot的最大好处是可以使用javaConfig来配置属性,其实它类似与spring中的xml配置,在springBoot中可以使用yml文件来配置一些属性,下面就是用yml来配置数据源和mybatis的xml映射关系的:application.yml,配置如下:

druid:
  dataSource:
    driverClassName: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test
    username: root
    password: 
    initialSize: 5
    maxActive: 200
    minIdle: 5
    maxWait: 60000
    validationQuery: SELECT 1 FROM DUAL
    removeAbandoned: true
    removeAbandonedTimeout: 180
    mapperLocations: classpath*:com.mapper.*/ *Mapper.xml    

以下是javaConfig的配置

1.首先创建个DataSourceSettings来加载数据库的来源:

import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.boot.context.properties.
ConfigurationProperties;

/**
 * Created by tangxiewen on 2016/5/31.
 */
@ConfigurationProperties(prefix =       DataSourceSettings.PREFIX)
public class DataSourceSettings extends     DruidDataSource {
  public static final String PREFIX = "druid.dataSource";

private String mapperLocations;

public String getMapperLocations() {
    return mapperLocations;
}

public void setMapperLocations(String mapperLocations) {
    this.mapperLocations = mapperLocations;
}
}

2.在创建个DataSourceAutoConfiguration用于注册SqlSessionFactoryBean,源码如下:

import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import  org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import  org.springframework.context.annotation.Configuration;

import java.io.IOException;

/**
 * Created by tangxiewen on 2016/5/31.
 */
    @Configuration
@MapperScan(basePackages = {"com.mapper"})
@EnableConfigurationProperties(DataSourceSettings.class)
public class DataSourceAutoConfiguration {
private static final Logger logger =    LoggerFactory.getLogger(DataSourceAutoConfiguration.class);

@Autowired
DataSourceSettings settings;

@Bean
public SqlSessionFactoryBean sqlSessionFactory(ApplicationContext applicationContext) throws IOException {
    SqlSessionFactoryBean sqlSessionFactory = new SqlSessionFactoryBean();
    sqlSessionFactory.setDataSource(settings);
    sqlSessionFactory.setMapperLocations(applicationContext.getResources(settings.getMapperLocations()));
    return sqlSessionFactory;
}
}

最后要在src/main/resources/创建一个META-INF文件夹在里面放置一个spring.factories文件,主要用于告知springBoot用我们的配置代替默认的配置
org.springframework.boot.autoconfigure.EnableAutoConfigur ation=\com.jdbc.DataSourceAutoConfiguration

等于后面是类的全类名的形式即包名+类名

注意点

就是用使用myBatis时mapper中的java类和xml的包名要一致,还是就是用idea注意一下他的包结构,不然会报绑定错误!!!

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

springboot+mybatis的简单的入门例子

1、 本人也是学习springboot不久,其良好的约定简化了配置,让我爱不释手,相比于jfinal,springboot感觉更好一点,当然这是本人意见,不喜勿喷。我在学习中也遇到了各种问题,也查找...

springboot整合mybatis最简单的例子

看下了springboot官网的例子,只有一个hello的简单例子,没有整合mybaits相关。   然后在网上找到了很多想找一个整合的demo程序,都觉得太冗余,不适合学习。不说废话,下...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

Spring Boot 实践折腾记(二):切入点,Spring MVC集成Mybatis的经典例子

一个人的生活,通常是要自己去努力,就算照搬了别人的生活形态,总有些东西,复制不了。不需要太操心别人的人生,过好自己的人生才是根本。了解世界上很多人的生命状态,可以借鉴、学习,找到适合自己的模式,就好。...

springBoot与MyBatis整合示例

Date: 2016-06-11 16:02 Title:springBoot与MyBatis整合示例 Category: springBoot Tags: springBootspringBo...

springboot与mybatis整合

完整代码如下: (1)目录结构 ...

springboot整合mybatis方式一

基于注解式整合spring boot 和mybatis

springboot整合mybatis

springboot整合mybatis mybatis pom.xml配置 org.mybatis.spring.boot mybat...

SpringBoot-整合MyBatis

Spring Boot 简化基于Spring的应用开发 步骤: 1、准备依赖: Spring-Boot:1.4.4 Maven:3.3.3,官方:springboot 1.4.4版本需...

SpringBoot 整合mybatis

1. 开发环境 IntelliJ IDEA Maven Spring-boot Mybatis 2. 添加Maven依赖 在 pom.xml中添加如下依赖文件:...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)