为 Spring Boot 与 Quarkus 服务生成并统一应用 Java 编码规范。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "java-coding-standards" 技能: 1. 下载 https://raw.githubusercontent.com/affaan-m/ECC/main/skills/java-coding-standards/SKILL.md 2. 保存为 ~/.claude/skills/java-coding-standards/SKILL.md 3. 装好后重载技能,告诉我可以用了
请按 Java 编码规范审查这段 Spring Boot 服务代码,重点检查命名、不可变性、Optional、异常处理、Stream 用法和项目结构,并给出修改后的版本与说明。
返回符合 Spring Boot 约定的重构代码,以及逐项规范说明和修改理由。
请将这段 Java 服务实现按 Quarkus 编码规范优化,特别关注 CDI 注入、泛型使用、异常设计、响应式模式和目录组织,输出改进后的代码。
输出符合 Quarkus 风格的优化实现,并说明涉及的框架特定规范。
基于 Spring Boot 和 Quarkus 服务开发场景,整理一份 Java 编码规范检查清单,覆盖命名、Optional、Stream、异常、不可变对象、响应式编程和模块结构。
生成可用于代码评审或团队协作的规范检查清单,便于统一开发标准。
Standards for readable, maintainable Java (17+) code in Spring Boot and Quarkus services.
Before applying standards, determine the framework from the build file:
quarkus → apply [QUARKUS] conventionsspring-boot → apply [SPRING] conventionsThe sections below show concrete Spring Boot, Quarkus, and shared Java examples for naming, immutability, dependency injection, reactive code, exceptions, project layout, logging, configuration, and tests.
// PASS: Classes/Records: PascalCase
public class MarketService {}
public record Money(BigDecimal amount, Currency currency) {}
// PASS: Methods/fields: camelCase
private final MarketRepository marketRepository;
public Market findBySlug(String slug) {}
// PASS: Constants: UPPER_SNAKE_CASE
private static final int MAX_PAGE_SIZE = 100;
// PASS: [QUARKUS] JAX-RS resources named as *Resource, not *Controller
public class MarketResource {}
// PASS: [SPRING] REST controllers named as *Controller
public class MarketController {}
// PASS: Favor records and final fields
public record MarketDto(Long id, String name, MarketStatus status) {}
public class Market {
private final Long id;
private final String name;
// getters only, no setters
}
// PASS: [QUARKUS] Panache active-record entities use public fields (Quarkus convention)
@Entity
public class Market extends PanacheEntity {
public String name;
public MarketStatus status;
// Panache generates accessors at build time; public fields are idiomatic here
}
// PASS: [QUARKUS] Panache MongoDB entities
@MongoEntity(collection = "markets")
public class Market extends PanacheMongoEntity {
public String name;
public MarketStatus status;
}
// PASS: Return Optional from find* methods
// [SPRING]
Optional<Market> market = marketRepository.findBySlug(slug);
// [QUARKUS] Panache
Optional<Market> market = Market.find("slug", slug).firstResultOptional();
// PASS: Map/flatMap instead of get()
return market
.map(MarketResponse::from)
.orElseThrow(() -> new EntityNotFoundException("Market not found"));
// PASS: Use streams for transformations, keep pipelines short
List<String> names = markets.stream()
.map(Market::name)
.filter(Objects::nonNull)
.toList();
// FAIL: Avoid complex nested streams; prefer loops for clarity
// PASS: [SPRING] Constructor injection (preferred over @Autowired on fields)
@Service
public class MarketService {
private final MarketRepository marketRepository;
public MarketService(MarketRepository marketRepository) {
this.marketRepository = marketRepository;
}
}
// PASS: [QUARKUS] Constructor injection
@ApplicationScoped
public class MarketService {
private final MarketRepository marketRepository;
@Inject
public MarketService(MarketRepository marketRepository) {
this.marketRepository = marketRepository;
}
}
// PASS: [QUARKUS] Package-private field injection (acceptable in Quarkus — avoids proxy issues)
@ApplicationScoped
public class MarketService {
…
帮助开发者为代码代理配置性能优化、安全防护与研究优先工作流。
提供数据库迁移、回滚与零停机发布的最佳实践指导,适用于多种 ORM 与 SQL 数据库。
通过双评审智能体对结果进行对抗式校验,提升输出发布前的可靠性
帮助你掌握地道 Rust 模式、所有权与并发实践,编写安全高性能应用。
基于 C++ Core Guidelines 编写、审查并重构更安全现代的 C++ 代码。
为 Claude Code 会话提供系统化校验流程,帮助检查结果正确性与质量。
为 Spring Boot 项目提供 Java 编码规范建议,统一命名、异常与结构实践。
提供 Quarkus 3.x 与 Camel 的后端架构模式与实现指导,支持事件驱动开发。
帮助开发者为 Quarkus 3.x 服务实施测试驱动开发、修复缺陷并安全重构。
帮助你设计 Quarkus 3 后端架构模式,覆盖消息、REST、数据访问与异步处理。
为 Quarkus 3.x 项目提供测试驱动开发方案,支持功能开发、修复与重构。
帮助你设计与优化 Spring Boot 后端架构、接口与服务实现。