一.spring boot集成Mybatis

gradle配置:

//gradle配置:
 compile("org.springframework.boot:spring-boot-starter-web:1.4.2.RELEASE")
 compile ('org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.0'){
        exclude group:'org.springframework'
    }
 compile("mysql:mysql-connector-java:5.1.39")

application.yml配置

spring:
    profiles:
      active: local

mybatis:
      configuration:
       log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
       cache-enabled: true   
      mapper-locations: classpath:mapper/*.xml

application-local.yml配置

spring:
    datasource:
      username: root
      password:
      driver-class-name: com.mysql.jdbc.Driver
      url: jdbc:mysql://localhost:3306/house?characterEncoding=utf8
server:
  port: 8082

注意此处配置文件最好在classpath的根目录下

三.spring-boot启动代码:

package com.lyhs.machineparts.run;

import com.lyhs.machineparts.entity.User;
import com.lyhs.machineparts.mapper.UserMapper;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.ComponentScan;

import java.sql.SQLException;
import java.util.List;

/**
 * 1.注意@MapperScan注解必须在spring-boot处标注,作用是扫描Mapper接口并创建其代理对象,作用类似于MapperScannerConfigure
 * 2.spring-boot对象池自动将根据配置文件自动创建SqlSessionFactoryBean与SqlSessionTemplate对象
 * 3.spring-boot的好处省略绝大多数代码及配置文件
 * Created by niechen on 17/7/16.
 */
@SpringBootApplication
@ComponentScan("com.lyhs")
@MapperScan(basePackages = "com.lyhs.machineparts.mapper")
public class PortalProvider {
    public static void main(String[] args) throws SQLException {
        ApplicationContext applicationContext = SpringApplication.run(PortalProvider.class, args);
        UserMapper userMapper = applicationContext.getBean(UserMapper.class);
        // System.out.println(houseMapper.toString());
        List<User> users = userMapper.selectAll();
        for (User user : users) {
            System.out.println(user.getName());
        }
    }
}

 

posted on 2017-07-20 21:44  聂晨  阅读(2557)  评论(0编辑  收藏  举报