mybaits 报错之 mybatis中,主配置文件中配置别名报错

项目场景:

在mybatis中,主配置文件中配置别名报错

Mybatis 支持默认别名,我们也可以采用自定义别名方式来开发,主要使用在< select resultType=”别名”>
mybatis.xml 主配置文件定义别名:

<typeAliases>
 <!--
 定义单个类型的别名
 type:类型的全限定名称
 alias:自定义别名 
 -->
 <typeAlias type="com.yuzuru.domain.Student" alias="mystudent"/>
 <!--
 批量定义别名,扫描整个包下的类,别名为类名(首字母大写或小写都可以)
 name:包名 
 -->
 <package name="com.yuzuru.domain"/>
 <package name="...其他包"/>
</typeAliases> 

mapper.xml 文件,使用别名表示类型

<select id="selectStudents" resultType="mystudent">
 select id,name,email,age from student
</select>

配置如下(错误):

<configuration>

    <!--定义别名-->
    <typeAliases>
        <package name="com.yuzuru.domain"/>
        <package name="com.yuzuru.VO"/>
    </typeAliases>
    <settings>
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>
</configuration>

问题描述

报错 : org.xml.sax.SAXParseException: 元素类型为 "configuration" 的内容必须匹配 "(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,plugins?,environments?,databaseIdProvider?,mappers?)"。

报错信息


原因分析:

分析 : 这里是说主配置文件中的 configuration 标签内的东西有问题,但是配置别名用的标签typeAliases是没问题的
报错原因 : configuration 中的元素,不仅类型有限制,也有顺序限制,必须按照(properties?,settings?,typeAliases?,typeHandlers?…)顺序排放,
解决办法 : 将元素顺序换一下,就好了


解决方案:

将顺序按照properties,settings,typeAliases,typeHandlers 来写就好了

<configuration>
    <settings>
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>
    <!--定义别名-->
    <typeAliases>
        <package name="com.yuzuru.domain"/>
        <package name="com.yuzuru.VO"/>
    </typeAliases>
</configuration>    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值