目前日常工作中使用的免费AI,后端能完成大部分的工作,已经感慨如果收费,是否能雇得起AI助手了。常用的有Lingma,CodeBuddy,通义千问,Deepseek。Lingma和Codebuddy作为AI编辑器,直接生成项目代码,省去复制粘贴。读取代码,丰富上下文,prompt理解更贴近。还可以执行验证,检查错误。
今天来记录最近需求中使用AI的场景:
1.定时任务,数据源:三方接口,动作:获取数据存入数据库。
三方接口已完成service封装,直接调用方法即可。service封装的AI生成,可提供三方文档让AI生成。
Lingma Prompt: 在文件 srcmainjavacom***.java 增加一个定时任务,每天8点执行一次,读取 srcmainjavacom***.java 中的 getData 方法获取各种资源值,写入表 srcmainjavacom***Mapper.java ,getData 返回的结果对应表中多条记录,字段名通过 srcmainjavacom***Enum.java 对应 数据表的**_type字段。
生成结果满足需求,无需改动,并且提供了方法封装。
2.对上面定时任务写入的表数据,提供RESTful接口。数据源:表数据,动作:生成聚合逻辑的service方法并提供RESTful接口。
Lingma Prompt: 在文件 srcmainjavacom***serviceImpl.java 增加方法查询 aaa 表。通过 selectByExample 方法查询三次,分别查询 **_type 值为 111, 222, 333 ,设置 created_time 大于等于 前6日的0点,小于 今日 0点的,时间使用 srcmainjavacom***DateUtil.java 里面的方法,没有的话新加工具类。查询的结果 通过 srcmainjavacom***Controller.java 新加路径返回,路径为 /list。
生成结果大体满足需求,查询时间未使用工具类,手动修改。其他逻辑无改动。
3.对生成的RESTful接口,编写接口文档供前端对接。数据源:Controller接口,动作:生成接口文档,供前端对接。
Lingma Prompt:生成 srcmainjavacom
***Controller.java 中 getDataList 接口的文档,方便前端对接。
生成结果满足需求,无需改动。如果要生成到文件中,可以指定文件地址。
4.根据后端的接口文档,前端接入,Lingma生成代码,满足需求,无需改动。
业务逻辑不复杂,模型生成满足需求节省了开发工作量。刚开始可能会觉得逻辑简单,自己写代码也挺快,还不够描述给AI Prompt复杂的呢。但写完Prompt,看着满足需求的代码生成,的确 速度快了。