IDEA中写MyBatis的xml配置文件编译报错的坑

Posted yucreator

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IDEA中写MyBatis的xml配置文件编译报错的坑相关的知识,希望对你有一定的参考价值。

IDEA中写MyBatis的xml配置文件编译报错的坑

说明:用IDEA编译工具在项目中使用Mybatis框架,编写mybatis-config.xml和Mapper.xml配置文件时,编译项目出现错误,错误提示为:

xml中1字节的UTF-8序列的字节1无效
The cause of this is a file that is not UTF-8 is being parsed as UTF-8. It is likely that the parser is encountering a byte value in the range FE-FF. These values are invalid in the UTF-8 encoding.

遇见这种情况时,我首先知道可能时字符编码集出现了问题,参考网上的许多办法还是不行,原因是我在整体项目的字符集设置中把在idea中新建的文件字符集默认为GBK形式了,所以所有的新建文件都会以GBK字符格式对中文字符进行转义,就会导致错误,可能是这两个编码格式对于某些特别中文的解码规则不同,有时可以互相错误使用,但是有时不可以,尤其是在写xml配置文件时。

又由于我的xml配置文件是这样写的,因为我以为已经配置好了idea的字符格式为UTF-8,但是我忘记了上次我只是在项目中配置的,却没有在idea全局中配置,所有导致今天误入了这个坑中。如果硬用GBK字符编码的话,这边encoding改为GBK也就可以了!

出现错误的详细原因就是:

XML文档的声明是在文档第一行第一列声明以下格式的标签:

 <?version="1.0" encoding="utf-8"?>     

当里面的属性设置了utf-8,还是有可能出现编码的错误的.如果你是以gbk的编码存储在系统,当打开文件的时候,浏览器首先在系统读取文件,但是,文件现在读取出来的是gbk,而xml文件的声明是utf-8,所以浏览器的读取是以utf-8的编码格式去解析了,因此出现了译码错误,所以显示不出来.

image-20191213182517371

image-20191213182206386

image-20191213182323549

下面贴上在idea的全局配置中配置所有新建文件以及项目文件字符编码格式都为UTF-8的方法:

image-20191213182927688

image-20191213183019066

以上是关于IDEA中写MyBatis的xml配置文件编译报错的坑的主要内容,如果未能解决你的问题,请参考以下文章

IntelliJ IDEA Spring+Mybatis dao bean对象注入失败

spring boot+mybatis注解使用方式(无xml配置)设置自动驼峰明明转换(),IDEA中xxDao报错could not autowire的解决方法

在idea中搭建MyBatis可能遇到的问题

idea的注入和自动编译配置

spring boot配置mybatis出现Invalid bound statement (not found)报错的解决办法

IDEA新建mybatis-config.xml配置文件