mirror of
				https://github.com/YunaiV/ruoyi-vue-pro.git
				synced 2025-11-04 08:06:12 +08:00 
			
		
		
		
	mapperLocations配置支持分隔符
This commit is contained in:
		@ -2,6 +2,7 @@ package com.ruoyi.framework.config;
 | 
			
		||||
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.Arrays;
 | 
			
		||||
import java.util.HashSet;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import javax.sql.DataSource;
 | 
			
		||||
@ -21,6 +22,7 @@ import org.springframework.core.type.classreading.CachingMetadataReaderFactory;
 | 
			
		||||
import org.springframework.core.type.classreading.MetadataReader;
 | 
			
		||||
import org.springframework.core.type.classreading.MetadataReaderFactory;
 | 
			
		||||
import org.springframework.util.ClassUtils;
 | 
			
		||||
import com.ruoyi.common.utils.StringUtils;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Mybatis支持*匹配扫描包
 | 
			
		||||
@ -89,6 +91,28 @@ public class MyBatisConfig
 | 
			
		||||
        return typeAliasesPackage;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public Resource[] resolveMapperLocations(String[] mapperLocations)
 | 
			
		||||
    {
 | 
			
		||||
        ResourcePatternResolver resourceResolver = new PathMatchingResourcePatternResolver();
 | 
			
		||||
        List<Resource> resources = new ArrayList<Resource>();
 | 
			
		||||
        if (mapperLocations != null)
 | 
			
		||||
        {
 | 
			
		||||
            for (String mapperLocation : mapperLocations)
 | 
			
		||||
            {
 | 
			
		||||
                try
 | 
			
		||||
                {
 | 
			
		||||
                    Resource[] mappers = resourceResolver.getResources(mapperLocation);
 | 
			
		||||
                    resources.addAll(Arrays.asList(mappers));
 | 
			
		||||
                }
 | 
			
		||||
                catch (IOException e)
 | 
			
		||||
                {
 | 
			
		||||
                    // ignore
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return resources.toArray(new Resource[resources.size()]);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Bean
 | 
			
		||||
    public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception
 | 
			
		||||
    {
 | 
			
		||||
@ -101,7 +125,7 @@ public class MyBatisConfig
 | 
			
		||||
        final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
 | 
			
		||||
        sessionFactory.setDataSource(dataSource);
 | 
			
		||||
        sessionFactory.setTypeAliasesPackage(typeAliasesPackage);
 | 
			
		||||
        sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(mapperLocations));
 | 
			
		||||
        sessionFactory.setMapperLocations(resolveMapperLocations(StringUtils.split(mapperLocations, ",")));
 | 
			
		||||
        sessionFactory.setConfigLocation(new DefaultResourceLoader().getResource(configLocation));
 | 
			
		||||
        return sessionFactory.getObject();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user