MyBatis-Spring-Boot icon indicating copy to clipboard operation
MyBatis-Spring-Boot copied to clipboard

几个问题

Open twogoods opened this issue 8 years ago • 3 comments

MyBatisMapperScannerConfig里的bean可以放在MyBatisConfig里吗?我尝试了报错。 我这边两个类里都打印了几句话,打印的信息看到确实是MapperScannerConfig比MyBatisConfig早执行,关键是basePackage没法读到配置的值,这个加@AutoConfigureAfter也没用,而且加了MapperScannerConfig还比MyBatisConfig 早执行....

@Configuration
public class MapperScannerConfig {
    @Value("${datasource.basePackage:com.tg.ms.mapper}")
    private String basePackage;
    @Bean
    public MapperScannerConfigurer BPMapperScannerConfigurer() {
        System.out.println("mapper--1.----******----"+basePackage+"----*******");
        MapperScannerConfigurer mapperScannerConfigurer = new MapperScannerConfigurer();
        mapperScannerConfigurer.setBasePackage("com.tg.mapper");
        mapperScannerConfigurer.setSqlSessionFactoryBeanName("sqlSessionFactoryBean");
        return mapperScannerConfigurer;
    }

}

twogoods avatar Oct 17 '16 11:10 twogoods

想要了解怎么使用,最好的方式就去看mybatis官方提供的starter项目,你可以参考看看。

abel533 avatar Oct 17 '16 12:10 abel533

我也遇到这个需求了,目前是实现了 implements EnvironmentAware接口,注入了环境变量. 然后 @Override public void setEnvironment(Environment environment) { this.propertyResolver = new RelaxedPropertyResolver(environment, null); this.basePackage = propertyResolver.getProperty("mybatis.basepackage"); }

ilaotan avatar Nov 07 '16 07:11 ilaotan

本项目已经修改,原理参考:Spring Boot - 配置排序依赖技巧

abel533 avatar Jan 02 '17 03:01 abel533