当前位置 : 主页 > 编程语言 > c++ >

mybatis读取配置文件工具类

来源:互联网 收集:自由互联 发布时间:2021-07-03
mybatis读取配置文件工具类 package com.mimidai.app.config;import com.alibaba.druid.pool.DruidDataSourceFactory;import org.apache.ibatis.session.SqlSessionFactory;import org.mybatis.spring.SqlSessionFactoryBean;import org.mybatis.spr
mybatis读取配置文件工具类
package com.mimidai.app.config;


import com.alibaba.druid.pool.DruidDataSourceFactory;

import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.env.Environment;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;

import java.util.Properties;

import javax.sql.DataSource;

/**
 * springboot集成mybatis的基本入口
 * 1)创建数据源
 * 2)创建SqlSessionFactory
 */
@SuppressWarnings("all")
@Configuration    //该注解类似于spring配置文件
@MapperScan(basePackages = "com.mimidai")
public class MyBatisConfig {

    @Autowired
    private Environment env;

    /**
     * 创建数据源
     *
     * @Primary 该注解表示在同一个接口有多个实现类可以注入的时候,默认选择哪一个,而不是让@autowire注解报错
     */
    @Bean
    public DataSource getDataSource() throws Exception {
        Properties props = new Properties();
        props.put("driverClassName", env.getProperty("jdbc.driverClassName"));
        props.put("url", env.getProperty("jdbc.url"));
        props.put("username", env.getProperty("jdbc.username"));
        props.put("password", env.getProperty("jdbc.password"));
        return DruidDataSourceFactory.createDataSource(props);
    }

    /**
     * 根据数据源创建SqlSessionFactory
     */
    @Bean
    public SqlSessionFactory sqlSessionFactory(DataSource ds) throws Exception {
        SqlSessionFactoryBean fb = new SqlSessionFactoryBean();
        fb.setDataSource(ds);
        fb.setTypeAliasesPackage(env.getProperty("mybatis.typeAliasesPackage"));
        fb.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(env.getProperty("mybatis.mapperLocations")));//指定xml文件位置
        return fb.getObject();
    }

}
pom文件
 

 
	
  
   4.0.0
  

	
  
   com.mimidai
  
	
  
   app
  
	
  
   0.0.1-SNAPSHOT
  
	
  
   jar
  

	
  
   app
  
	
  
   app project for Spring Boot
  

	
   
   
    org.springframework.boot
    
   
    spring-boot-starter-parent
    
   
    1.5.6.RELEASE
    
    
    
  

	
   
   
    UTF-8
    
   
    UTF-8
    
   
    1.8
    
  

	
   
    
    
     org.springframework.boot
     
    
     spring-boot-starter
     
    
    
    
     org.mybatis.spring.boot
     
    
     mybatis-spring-boot-starter
     
    
     1.3.0
     
    
    
    
     com.alibaba
     
    
     druid
     
    
     1.0.27
     
    
    
    
     mysql
     
    
     mysql-connector-java
     
    
     runtime
     
    
    
    
     org.springframework.boot
     
    
     spring-boot-starter-test
     
    
     test
     
    
  

	
   
    
     
     
      org.springframework.boot
      
     
      spring-boot-maven-plugin
      
     
    
  



 
application.properties
mybatis.typeAliasesPackage=com.mimidai.app.entity
mybatis.mapperLocations=classpath:mapper/*.xml
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://XXXXXXXX?characterEncoding=utf-8
jdbc.username=root
jdbc.password=XXXXXXX
上一篇:Redis常用指令
下一篇:spring(测试)
网友评论