package com.chinaweal.youfool.prj.config; import com.baomidou.mybatisplus.core.config.GlobalConfig; import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean; import com.chinaweal.youfool.framework.springboot.mybatis.plus.CommonMetaObjectHandler; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import javax.annotation.Resource; import javax.sql.DataSource; /** * 项目的数据源 */ @Configuration @MapperScan(basePackages = {"com.chinaweal.youfool.framework.springboot.cms.**.mapper", "com.chinaweal.youfool.prj.**.mapper"}) public class PrjDataSource { @Resource private CommonMetaObjectHandler commonMetaObjectHandler; @Bean(name = "prjSqlSessionFactory") @Primary public MybatisSqlSessionFactoryBean sqlSessionFactory(@Qualifier("prjDS") DataSource dataSource) throws Exception { MybatisSqlSessionFactoryBean bean = new MybatisSqlSessionFactoryBean(); bean.setDataSource(dataSource); GlobalConfig globalConfig = new GlobalConfig(); globalConfig.setMetaObjectHandler(commonMetaObjectHandler); bean.setGlobalConfig(globalConfig); bean.setConfigLocation(new ClassPathResource("mybatis/mybatis-config.xml")); bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:mybatis/mapper/**/*.xml")); return bean; } }