AI编程总翻车?3个实战技巧+5个坑,后端照着用
上周四晚上十点,我在改一个订单关闭逻辑。需求不复杂:订单 30 分钟未支付,自动关闭并释放库存。我让 AI 工具在现有 Spring Boot 项目里补一段代码,它两分钟就吐出一版:加了 Redis 锁,发了 MQ,还顺手“优化”了异常处理。结果一跑单测,编译先挂——它调用了一个项目里根本不存在的 Redisson 方法;再仔细看,事务注解加在 private 方法上,库存释放也没有幂等键。预发环境一压,同一笔订单重复释放了两次库存。
这不是 AI 不会写代码。是我们在用 AI 写代码时,常掉进两个误区:把它当高级自动补全,指望一句话出生产代码;把它当搜索引擎,不给工程上下文,只给一句“帮我实现订单关闭”。AI 能跑得很快,但方向错了,跑得越快,回头越痛。
一、能直接照搬的3个AI编程实战技巧
1. 先给AI一张“工程地图”,再让它动键盘
操作步骤:
- 建一个上下文包:目录树、依赖版本、关键接口、表结构、日志规范、测试命令。
- 提示词里写清:目标、范围、禁止改哪些类、验收命令、输出格式。
- 让它先复述理解,确认后再写代码。
案例:一个优惠券叠加逻辑。项目是 Spring Boot 2.7 + MyBatis,AI 一开始想用 JPA 注解,还编了一个 CouponEngine.calculate()。我把 pom.xml、OrderService 接口、coupon 表结构贴进去,并注明“不新增依赖,只改 CouponService”,它给出的实现就能直接编译。前后差别不在模型,在上下文。
AI不缺代码能力,缺的是你项目里的地图。
2. 小步提交:一次只改一个函数,测试先冻结
操作步骤:
- 新开分支,先把现有测试


