Commit 9ee2ed8f by 李传峰

feat:[none] mybatis支持多mapper映射扫描,英文分号分隔

parent 7ab08e6e
...@@ -3,6 +3,8 @@ package com.pcloud.common.core.datasource; ...@@ -3,6 +3,8 @@ package com.pcloud.common.core.datasource;
import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet; import com.alibaba.druid.support.http.StatViewServlet;
import com.pcloud.common.core.mybatis.interceptor.ExecutorInterceptor; import com.pcloud.common.core.mybatis.interceptor.ExecutorInterceptor;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.plugin.Interceptor; import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.SqlSessionFactoryBean;
...@@ -18,6 +20,7 @@ import org.springframework.boot.web.servlet.ServletRegistrationBean; ...@@ -18,6 +20,7 @@ import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Primary;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.jdbc.datasource.DataSourceTransactionManager; import org.springframework.jdbc.datasource.DataSourceTransactionManager;
...@@ -151,7 +154,16 @@ public class DataSourceConfig { ...@@ -151,7 +154,16 @@ public class DataSourceConfig {
logger.info("【DataSource】初始化SqlSessionFactory,<START>"); logger.info("【DataSource】初始化SqlSessionFactory,<START>");
final SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean(); final SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean();
sessionFactoryBean.setDataSource(dataSource()); sessionFactoryBean.setDataSource(dataSource());
sessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(mapperLocations));
PathMatchingResourcePatternResolver patternResolver = new PathMatchingResourcePatternResolver();
Resource[] resources = new Resource[]{};
String[] mappers = StringUtils.split(mapperLocations, ';');
for (String m : mappers) {
resources = ArrayUtils.addAll(resources, patternResolver.getResources(m));
}
sessionFactoryBean.setMapperLocations(resources);
sessionFactoryBean.setVfs(SpringBootVFS.class); sessionFactoryBean.setVfs(SpringBootVFS.class);
sessionFactoryBean.setTypeAliasesPackage(typeAliasesPackage); sessionFactoryBean.setTypeAliasesPackage(typeAliasesPackage);
sessionFactoryBean.setPlugins(new Interceptor[] { interceptor }); sessionFactoryBean.setPlugins(new Interceptor[] { interceptor });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment