mybatis-mapper / mapper

MyBatis Mapper
https://mapper.mybatis.io
Apache License 2.0
325 stars 47 forks source link

使用JPA注解时批量插入数据空指针异常 #92

Closed zisedk closed 7 months ago

zisedk commented 7 months ago

批量插入数据使用调用了

io.mybatis.provider.keysql.KeySqlMsCustomize

但是JPA解析主键 EntityColumn 未设置 afterSqlgenId 默认值都为 null

23

abel533 commented 7 months ago

看代码这俩默认值都不是空:

    /**
     * 主键策略2,优先级2:取主键的 SQL,当前SQL只能在 INSERT 语句执行后执行,如果想要在 INSERT 语句执行前执行,可以使用 {@link #genId()}
     */
    String afterSql() default "";

    /**
     * 主键策略3,优先级3:Java 方式生成主键,可以和发号器一类的服务配合使用
     */
    Class<? extends GenId> genId() default GenId.NULL.class;

使用的最新版本吗?

zisedk commented 7 months ago

你这个是 Entity.Column 中的值吧。但是我使用的是JPA解析的 默认的 EntityColumn 是没有给值的

3

zisedk commented 7 months ago

JpaEntityColumnFactory 中解析 EntityColumn 没有对这2个值进行赋值,然后 EntityColumn 中的是没有默认值的

abel533 commented 7 months ago

这儿是bug