1.在使用 `@AllArgsConstructor` 时,构造函数中的依赖注入与字段级别的注解@Value发生冲突,因为 `@AllArgsConstructor` 会覆盖默认的无参构造函数,而 Spring 的依赖注入通常依赖于无参构造函数。
2.在MyBatis Plus框架中,@TableId
注解被用来标记实体类中的某个字段作为数据库表的主键。当与 IdType.ASSIGN_UUID
结合使用时,它指定了一个特定的策略来自动生成这个主键的值。UUID是一种能够确保在全球范围内唯一性的标识符,通常由32个十六进制数字构成,分为五个段,形式如:550e8400-e29b-41d4-a716-446655440000
,如果需要使用这个Id,一定要在数据表保存之后,不然MyBatis Plus框架还没有自动生成主键,获取的Id为null
3.Entity实体类使用@TableName("xxxxx")注解与数据库中某个表相关联时,如果有属性不在数据表中,需要用@TableField(exist = false)注解标注,因为MyBatis Plus在执行CRUD操作时可能会尝试去更新或插入这些属性,从而导致SQL语句构建错误,因为数据库表中并没有这些字段。