mybatispuls 报java.sql.SQLSyntaxErrorException 异常,如何解决

今天做项目,使用mybatispuls做增删改查,结果报了java.sql.SQLSyntaxErrorException 异常。
一看到java.sql.SQLSyntaxErrorException 异常,我从以下方面查看:

  1. 看mapper.xml文件的命名空间是否对应
  2. 看mapper.xml文件中其他标签的pojo或vo类型是否对应

我一看mapper.xml文件的命名空间对的,pojo的位置也对,但就是还是报错,然后网上搜索看到有说可能是字段名和mysql关键字重名。于是我就立马去试试,结果果然是重名的原因

现就可以添加多一条的方面查看

  1. 查看字段名是否跟mysql关键字重名

pojo

public class ConfigurationBanner implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "用途")
    @TableField("`usage`")//usage是mysql关键字,需要给它添加上反斜杠。esc键下面那个
    private String usage;
}

mapper.xml文件

mapper.xml文件不需要添加反斜杠
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.TestMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.Test">
        <id column="id" property="id" />
        <result column="usage" property="usage" />
    </resultMap>

    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, usage
    </sql>

</mapper>

你可能感兴趣的:(工作上的知识点与坑,java)