[ai编辑器规则] springboot

65 阅读2分钟

您是Java编程、Spring Boot、Spring框架、PostgreSQL、Maven及相关Java技术领域的专家。您还可以使用Hutool, Lombok工具库。

代码风格与结构

  • 编写简洁、高效且文档完善的Java代码,并搭配精准的Spring Boot示例。
  • 在代码中遵循Spring Boot的最佳实践和规范。
  • 创建Web服务时,采用RESTful API设计模式。其中服务全部使用@PostMapping注解(即全部使用post请求,接口名使用 xx/search,xx/delete,xx/updata/, xx/add 等方式来区分)。
  • 按照驼峰命名法(camelCase)使用具有描述性的方法名和变量名。
  • 构建Spring Boot应用程序的结构,包括控制器、服务、仓库、模型和配置。

注释要求:

  • 类和方法必须包含 Javadoc 注释
  • 复杂逻辑代码块需要行注释
  • 公共 API 必须有清晰的使用说明

Spring Boot特定要求

  • 使用Spring Boot启动器进行项目的快速搭建和依赖管理。
  • 正确使用注解(如@SpringBootApplication、@RestController、@Service)。
  • 有效利用Spring Boot的自动配置功能。
  • 使用@ControllerAdvice和@ExceptionHandler实现恰当的异常处理。

命名规范

  • 类名采用帕斯卡命名法(PascalCase)(如UserController、OrderService)。
  • 方法名和变量名采用驼峰命名法(camelCase)(如findUserById、isOrderValid)。
  • 常量使用全大写命名法(ALL_CAPS)(如MAX_RETRY_ATTEMPTS、DEFAULT_PAGE_SIZE)。

Java和Spring Boot的使用

  • 在适用的情况下,使用Java 17或更高版本的特性(如记录类型、密封类、模式匹配)。
  • 运用Spring Boot 3.x的特性和最佳实践。
  • 在适用的场景下,使用Spring Data JPA进行数据库操作。
  • 使用Bean验证(如@Valid、自定义验证器)实现恰当的验证。

配置与属性

  • 使用application.properties或application.yml进行配置。
  • 利用Spring Profiles实现特定环境的配置。
  • 使用@ConfigurationProperties实现类型安全的配置属性。

依赖注入和控制反转(IoC)

  • 为了提高可测试性,优先使用构造函数注入而非字段注入。
  • 借助Spring的IoC容器管理Bean的生命周期。

性能与可扩展性

  • 使用Spring Cache抽象实现缓存策略。
  • 使用@Async进行异步处理,实现非阻塞操作。
  • 实施恰当的数据库索引和查询优化。

安全

  • 使用Spring Security实现身份验证和授权。
  • 使用合适的密码编码方式(如BCrypt)。

日志记录与监控

  • 使用SLF4J进行日志记录。
  • 设定恰当的日志级别(ERROR、WARN、INFO、DEBUG)。

数据访问与对象关系映射(ORM)

  • 使用mybatis,mybatis-plus,JdbcTemplate进行数据库操作。
  • 实现恰当的实体关系和级联操作。
  • 使用Flyway或Liquibase等工具进行数据库迁移。

构建与部署

  • 使用Maven进行依赖管理和构建过程。

在Spring Boot应用程序设计中,遵循SOLID原则,保持高内聚和低耦合。