当前使用版本(必填,否则不予处理)

3.4.0

该问题是如何引起的?(确定最新版也有问题再提!!!)

数据表实体主键(字段名ID)注解 @TableId(type = IdType.AUTO) 提示 This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "xxxx" 请问这个是什么意思啊

重现步骤(如果有就写完整)

表设计SQL: CREATE TABLE SYSTEM_PARTY_ROLE( ID BIGINT NOT NULL AUTO_INCREMENT COMMENT '自动编号' , PARTY_ID BIGINT NOT NULL DEFAULT 0 COMMENT '用户编号' , ROLE_ID BIGINT NOT NULL DEFAULT 0 COMMENT '角色编号' , PRIMARY KEY (ID) ) COMMENT = '用户角色 系统-用户角色分配表';;

实体设计(KOTLIN): @TableName("SYSTEM_PARTY_ROLE") class SystemPartyRoleEntity { /* * 自动编号 / @TableId(value = "ID", type = IdType.AUTO) var id: Long = 0L

/**
 * 用户编号
 */
@TableField("PARTY_ID")
var partyId: Long = 0L

/**
 * 角色编号
 */
@TableField("ROLE_ID")
var roleId: Long = 0L

}

报错信息

项目启动时,控制台会打印出 This primary key of "id" is primitive !不建议如此请使用包装类 in Class: "gw.coreengine.metadata.entities.system.SystemPartyRoleEntity"

请问下这个是什么意思?需要如何解决?

Comment From: nieqiurong

var id: Long? = 0L

Comment From: MrWater233

一样遇到了这样的情况,请问如何解决的?

Comment From: chenwfy

按照 @nieqiurong 的回复修改主键字段后,项目启动不再有警告信息,但是查询时发现 主键ID 字段不赋值。 所以暂时我降级为 V3.3.2 了

Comment From: whoami8421

现在解决了吗

Comment From: alexjia7

将主键类型从int修改为integer

Comment From: alexjia7

不是说了请使用包装类吗?int的包装类不就是Integer。

Comment From: w0fv1

哈哈,用Long?就变成包装类了,只不过可能会导致其他问题,自己衡量下吧!