javaer的.cursorrules
背景
这里提供一个自己编写的模板,主要针对基础的CRUD场景,要求AI符合MVC模型。
项目技术背景
- springboot 2.7
- gradle 6.9
- lombok
- mybatis-plus
- pojo类统一使用lombok的@Data注解
- 使用springmvc做接口开发
- 编写代码注意按照mvc结构分层。基本有Controller、Service、Mapper三层。Mapper请使用mybatis-plus实现
编码规则
- 修改代码时不要修改无关的内容,比如将英文日志变成中文等。
- 除Get请求外,Controller的方法参数中一律使用@RequestBody @Valid
- Controller的方法参数后缀是DTO,返回给前端的数据后缀是VO
- 参数除非小于3个,一律封装成DTO,并使用HibernateValidator的注解进行参数校验,注意写上messages,校验规则不要太严格,除非明确说明,只需要校验必传和非必传
- 所有删除功能,请做成批量删除。
- 不得使用magic number。请统一新建枚举类表示状态。枚举类需要实现mybatis-plus的IEnum
接口,返回this.name() - 通用方法请提取成Util后缀的类
文件结构
采用maven项目的结构。资源类文件如excel模板、mybatis的mapper.xml等统一放在resources目录各自的目录下,如excelTemplate、mapper。配置文件
测试要求
文档规范
- 所有方法上需要标有注释,表明这段代码的业务意图
- 方法内的重要参数上需要标明意图
错误处理
- 所有日志输出请使用参数替换。内容需要包括当前参数、输出等有利于排查问题的内容。如果有捕获到异常,必须抛出异常或将异常打印出来,不得直接跳过。
misc
- 原有代码,在没有明确需要改动原有代码文件的时候,不允许主动修改原有代码文件,除非会影响新增的功能。
javaer的.cursorrules