通过mybatis-generator生成mapper.xml,但是主键id提示error

图片描述

<statement> or DELIMITER expected,got 'id'

如图所示,就这里有一个error,没看明白什么意思

其他内容都正常,就第一个Base_Column_List的id有红色下划线的error

<constructor >
  <idArg column="id" jdbcType="INTEGER" javaType="java.lang.Integer" />
  <arg column="user_id" jdbcType="INTEGER" javaType="java.lang.Integer" />
  <arg column="product_id" jdbcType="INTEGER" javaType="java.lang.Integer" />
  <arg column="quantity" jdbcType="INTEGER" javaType="java.lang.Integer" />
  <arg column="checked" jdbcType="INTEGER" javaType="java.lang.Integer" />
  <arg column="create_time" jdbcType="TIMESTAMP" javaType="java.util.Date" />
  <arg column="update_time" jdbcType="TIMESTAMP" javaType="java.util.Date" />
</constructor>

  <sql id="Base_Column_List" >
    id, user_id, product_id, quantity, checked, create_time, update_time
  </sql>

其他自动生成的表也是一样的
不知道是intellij的告警级别的问题,还是真的有问题

阅读 15.2k
5 个回答

intelliJ2017是会这样报错的,但是运行起来没问题,算是intelliJ的小bug吧

clipboard.png

clipboard.png

这样就不会检查 <sql> 标签了 目前这是我找到的方法

特别理解你这种强迫症,因为我也是…………

我的解决方案:

    <sql id="Base_Column_List">
        SELECT id, XX FROM table
    </sql>
    <select id="selectByPrimaryKey">
        <include refid="Base_Column_List" />
        where id = #{id,jdbcType=BIGINT}
    </select>

可以测试一下是否正常运行,如果运行报错再找错误,编辑器提示错误不一定真的有错误

新手上路,请多包涵

是误报,但是强迫症看着难受。有解决的方案吗

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏