Could not resolve type alias ‘xxx‘

产生错误原因有以下2种原因
第一种是在yml中配置以下
mybatis: mapper-locations: classpath:mapper/xxx/*.xml
type-aliases-package: com.xxx.entity
配置好后如果使用的是springboot

  @Bean(name = "subTemSqlSessionFactory")
    @Primary
    public SqlSessionFactory subTemSqlSessionFactory(@Qualifier("subTemDataSource") DataSource dataSource) throws Exception {
        SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();

        sqlSessionFactoryBean.setDataSource(dataSource);
        sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mapper/xxx/*.xml"));
        sqlSessionFactoryBean.setVfs(SpringBootVFS.class);
           sqlSessionFactoryBean.setTypeAliasesPackage(env.getProperty("mybatis.type-aliases-package"));
        return sqlSessionFactoryBean.getObject();
    }

要配置以下3行代码,才能配spring扫描到,否则不生效报错Could not resolve type alias ‘xxx’
sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mapper/xxx/*.xml")); sqlSessionFactoryBean.setVfs(SpringBootVFS.class); sqlSessionFactoryBean.setTypeAliasesPackage(env.getProperty("mybatis.type-aliases-package"));

第二种 是采用mybatis-config.xml
mybatis: mapper-locations: classpath:mapper/xxx/*.xml
config-location: classpath:mybatis-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <setting name="cacheEnabled" value="true"/>
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>
    <typeAliases>
        <package  name="com.xxx.entity"/>
    </typeAliases>
</configuration>

同以上的代码
需要将 sqlSessionFactoryBean.setTypeAliasesPackage(env.getProperty("mybatis.type-aliases-package")); 替换为 sqlSessionFactoryBean.setConfigLocation(new ClassPathResource("mybatis-config.xml"));因为现在yml里面是config-location: classpath:mybatis-config.xml所以要换成相应的代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值