atoms平台生成的vo类需手动修正:字段类型(如decimal→bigdecimal)、javabeans命名规范(如getusername→getusername)、jackson注解(@jsonignore/@jsonproperty/@jsoninclude)、lombok注解或手写getter/setter。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在使用 Atoms 平台生成代码后,VO 实体类的属性配置往往不能直接满足业务需求,比如字段类型错误、缺失 getter/setter、注解位置不对、或需要增加 Jackson 序列化控制逻辑,必须手动介入二次修改。
定位并打开自动生成的 VO 类文件
进入项目 module 的 src/main/java 目录,按包路径找到 dto 或 vo 子包(具体名称依平台模板而定),查找以 【VO】 结尾的 Java 类,例如 UserVO.java 或 OrderDetailVO.java。
双击打开该文件,确认顶部 package 声明与当前模块结构一致,否则后续编译会报错。
修正字段类型与命名不匹配问题
逐行检查每个字段声明,重点比对数据库字段类型和前端传参预期:
若数据库中为 DECIMAL(10,2),但生成的是 Double,应改为 BigDecimal —— 否则精度丢失无法避免,尤其涉及金额场景;
若字段名为 user_name,生成类中却是 userName(正确),但 getter 方法被误写为 getUsername(),必须手工改为 getUserName(),否则 Jackson 反序列化失败;
遇到布尔类型字段如 is_deleted,生成结果常为 Boolean isDeleted + isDeleted(),这是合法的,但若平台生成了 getIsDeleted(),必须删掉并补上符合 JavaBeans 规范的 isDeleted()。
补充 Jackson 注解控制序列化行为
方法一:禁用某字段输出
在不需要返回给前端的字段前添加 @JsonIgnore,例如 private String salt; → @JsonIgnore private String salt;;
方法二:重命名 JSON 字段名
对前端要求字段名为 order_no 但 Java 属性为 orderNo 的情况,在字段上方加 @JsonProperty("order_no");
方法三:统一空值处理策略(仅需在类级别加一次)
在类定义上方添加 @JsonInclude(JsonInclude.Include.NON_NULL),避免返回 "name": null 这类无效字段。
【注意:@JsonInclude 必须加在类声明行,不可加在字段上,否则无效】
补全 Lombok 注解或手写 getter/setter
第一步:确认类顶部是否已存在 @Data 或 @Getter @Setter;
第二步:若存在 @Data,检查是否有字段被 @ToString.Exclude 或 @EqualsAndHashCode.Exclude 误排除 —— 此时需手动删掉排除标记,或改用 @Getter @Setter 精确控制;
第三步:若项目禁用 Lombok,则必须删除所有 Lombok 注解,并为每个字段补全标准 getter/setter 方法,IDEA 可按 Alt+Insert → “Getter and Setter” 批量生成;
第四步:检查 toString() 输出是否包含敏感字段(如密码、token),如有,必须删掉对应字段的拼接逻辑或改用手写 toString()。











