You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JHipster移除实体属性后数据库仍要求该属性的问题求助

解决JHipster移除实体属性后仍要求字段的问题
  • 重新生成实体代码:修改JDL文件后,执行jhipster import-jdl 你的JDL文件名.jh,让JHipster重新生成Payment实体相关的后端实体类、DTO、控制器以及前端表单代码,确保自动移除paymentDate相关的所有生成代码。
  • 手动检查并清理实体类残留:打开src/main/java/[你的包路径]/domain/Payment.java,确认已删除private Instant paymentDate;字段、对应的getter/setter方法,以及@Column相关注解,避免自动生成遗漏。
  • 更新数据库迁移脚本:如果使用Liquibase(JHipster默认配置),执行jhipster liquibase:diff生成新的数据库变更脚本,该脚本会包含移除paymentDate字段的操作。生成后检查src/main/resources/config/liquibase/changelog下的新脚本,确认内容无误后,启动应用时Liquibase会自动执行变更;如果之前手动删表无效,是因为Liquibase的 changelog 记录了历史操作,重启会重复执行旧的创建字段逻辑,必须通过新迁移脚本覆盖。
  • 清理前端残留代码:检查前端框架(Angular/React/Vue)的Payment相关组件(如创建、编辑表单),移除paymentDate对应的表单控件、校验规则,以及API请求中携带的paymentDate参数,避免前端提交时传递无效字段触发后端校验。
  • 清理校验规则:检查src/main/java/[你的包路径]/service/dto/PaymentDTO.java,确保已删除paymentDate字段及对应的校验注解(如@NotNull),防止DTO校验时要求该字段存在。
  • 清理缓存:清理Maven/Gradle本地缓存(执行mvn clean或gradle clean),同时清除浏览器缓存或重启前端开发服务器,避免旧代码缓存导致的问题。

内容的提问来源于stack exchange,提问作者Oladejo Olajide

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 11:37:11