Java 代码注释规范工具包

SKILL开发

原名 Java Comment Skill Kit · 标识 springboot-skill

开发 未标注权限 许可证不明确
安装这个技能

提供一套 Java 注释落地方案,含编辑器技能、Checkstyle 检查规则、IDEA 代码模板和 Spring Boot 定制版,帮团队统一注释写法。

一句话选型结论

按资料字段整理

Java 代码注释规范工具包是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_67a4acd9/springboot-skill
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_67a4acd9仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验2026-11-06上游最后核验时间 · 数据更新 2026-11-06
正文体量9.8 KBSKILL.md 原文大小,越大说明说明书写得越细

能做什么

0 项能力
上游给出的能力概览与适用场景
统一 Java 注释规范配置注释检查规则生成 Spring Boot 注

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
Java 代码注释规范工具包当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

9.8 KB
模型实际读到的说明书原文,来自技能仓库

============================================================

Spring Boot + Lombok Java 注释 Skill

专为企业级 Spring Boot 项目定制

============================================================

Skill 元信息

  • 名称: spring-boot-javadoc-skill
  • 版本: 2.0.0
  • 适用: Spring Boot 2.x / 3.x + Lombok 项目
  • Java 版本: Java 11+

核心指令(System Prompt)

你是一位资深 Java 架构师,精通 Spring Boot 生态。
请为以下 Java 代码添加生产级注释。

全局规则

  1. 不修改任何业务逻辑
  2. 中文注释(除非用户指定英文)
  3. 标准 JavaDoc /** */ 格式
  4. 禁止废话注释

分层注释策略

1️⃣ Controller 层

/**
 * 用户管理 REST 接口
 *
 * <p>提供用户注册、登录、信息查询、权限管理等 HTTP 端点。</p>
 *
 * @author YourName
 * @since 2026-01-01
 */
@RestController
@RequestMapping("/api/v1/users")
@Validated
public class UserController {

    /**
     * 根据 ID 查询用户详情
     *
     * <p>GET /api/v1/users/{id}</p>
     * <p>权限要求:ROLE_ADMIN 或自身查询</p>
     *
     * @param id 用户唯一标识,路径参数
     * @return 200 + 用户视图对象;404 用户不存在
     * @throws BusinessException 当 ID 格式非法时抛出
     */
    @GetMapping("/{id}")
    @PreAuthorize("hasRole('ADMIN') or #id == authentication.principal.id")
    public ResponseEntity<UserVO> getUserById(@PathVariable @Min(1) Long id) {
        // 查询用户,不存在时抛出 BusinessException(全局异常处理器转为 404)
        UserVO user = userService.getUserById(id);
        return ResponseEntity.ok(user);
    }
}

注释要点:
- 注明 HTTP Method + URL
- 注明权限要求
- 注明状态码语义
- 说明 Spring Security 注解的作用


2️⃣ Service 层

/**
 * 用户领域服务
 *
 * <p>负责用户生命周期管理:注册、认证、信息维护。</p>
 * <p>事务边界在此层定义。</p>
 */
@Service
@RequiredArgsConstructor
@Slf4j
public class UserService {

    private final UserRepository userRepository;
    private final PasswordEncoder passwordEncoder;

    /**
     * 用户注册
     *
     * <p>流程:参数校验 → 查重 → 加密密码 → 持久化 → 发送注册事件</p>
     * <p>事务:整个方法在一个事务内,任一环节失败全部回滚</p>
     *
     * @param dto 注册请求参数
     * @return 注册成功的用户视图对象
     * @throws DuplicateUserException 当用户名/邮箱已存在时抛出
     * @throws ValidationException    当参数不合法时抛出
     */
    @Transactional(rollbackFor = Exception.class)
    @CacheEvict(value = "users", allEntries = true)
    public UserVO register(UserRegisterDTO dto) {
        log.info("开始用户注册流程,用户名: {}", dto.getUsername());

        // 检查用户名是否已存在(唯一索引兜底在数据库层)
        if (userRepository.existsByUsername(dto.getUsername())) {
            throw new DuplicateUserException("用户名已存在: " + dto.getUsername());
        }

        // 加密密码(BCrypt,10轮)
        String encodedPassword = passwordEncoder.encode(dto.getPassword());

        // 构建实体并持久化
        User user = User.builder()
                .username(dto.getUsername())
                .password(encodedPassword)
                .email(dto.getEmail())
                .status(UserStatus.ACTIVE)
                .build();
        userRepository.save(user);

        // 发布注册成功领域事件(异步通知、积分发放等)
        applicationEventPublisher.publishEvent(new UserRegisteredEvent(user.getId()));

        log.info("用户注册成功,ID: {}", user.getId());
        return UserVO.from(user);
    }
}

注释要点:
- 说明业务流程步骤
- 说明事务边界和回滚策略
- 说明缓存操作的影响
- 关键日志点的语义
- @CacheEvict / @Cacheable 缓存策略说明


3️⃣ Entity / DO 层

/**
 * 用户实体(数据库映射)
 *
 * <p>对应表:t_user</p>
 * <p>使用 Lombok @Data 自动生成 getter/setter/equals/hashCode</p>
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Entity
@Table(name = "t_user", indexes = {
    @Index(name = "idx_username", columnList = "username", unique = true)
})
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    /** 主键 ID */
    private Long id;

    /** 用户名(唯一),3-20 字符 */
    @Column(nullable = false, unique = true, length = 20)
    private String username;

    /** 密码(BCrypt 加密后,60 字符) */
    @Column(nullable = false, length = 60)
    private String password;

    /** 邮箱地址 */
    @Column(length = 100)
    private String email;

    /** 账户状态:ACTIVE=正常, LOCKED=锁定, DISABLED=禁用 */
    @Enumerated(EnumType.STRING)
    @Column(nullable = false, length = 20)
    private UserStatus status;

    /** 创建时间(自动填充) */
    @CreationTimestamp
    @Column(updatable = false)
    private LocalDateTime createdAt;
}

注释要点:
- 注明对应数据库表名
- 注明 Lombok 注解生成的代码
- 字段注释说明业务含义、长度限制
- 枚举值含义说明


4️⃣ DTO / VO 层

/**
 * 用户注册请求 DTO
 *
 * <p>用于接收前端注册表单数据,包含参数校验注解。</p>
 * <p>使用 @Builder(Lombok)支持链式构建。</p>
 */
@Data
@Builder
public class UserRegisterDTO {

    @NotBlank(message = "用户名不能为空")
    @Size(min = 3, max = 20, message = "用户名长度必须在 3-20 之间")
    /** 用户名 */
    private String username;

    @NotBlank(message = "密码不能为空")
    @Pattern(regexp = "^(?=.*[A-Z])(?=iles.*[a-z])(?=.*\\d).{8,}$",
             message = "密码必须包含大小写字母和数字,至少8位")
    /** 明文密码(仅在传输层使用,不持久化) */
    private String password;

    @Email(message = "邮箱格式不正确")
    /** 邮箱地址 */
    private String email;
}

5️⃣ 配置类

/**
 * Redis 缓存配置
 *
 * <p>自定义 RedisTemplate 序列化方式,使用 JSON 替代默认 JDK 序列化。</p>
 * <p>同时配置缓存管理器,设置默认 TTL 和空值缓存策略。</p>
 */
@Configuration
@EnableCaching
public class RedisCacheConfig extends CachingConfigurerSupport {

    /**
     * RedisTemplate Bean 配置
     *
     * <p>Key 使用 String 序列化,Value 使用 Jackson JSON 序列化。</p>
     *
     * @param connectionFactory Redis 连接工厂(自动注入)
     * @return 配置好的 RedisTemplate
     */
    @Bean
    public RedisTemplate<String, Object> redisTemplate(
            RedisConnectionFactory connectionFactory) {
        RedisTemplate<String, Object> template = new RedisTemplate<>();
        template.setConnectionFactory(connectionFactory);

        // Key 序列化:String
        template.setKeySerializer(new StringRedisSerializer());
        // Value 序列化:JSON
        template.setValueSerializer(new GenericJackson2JsonRedisSerializer());

        return template;
    }
}

Lombok 注解速查注释表

在类级别 JavaDoc 中引用此表:

注解 注释说明模板
@Data 自动生成 getter/setter/equals/hashCode/toString
@Builder 支持 Builder 模式构建对象,推荐用于多参数构造
@Slf4j 自动注入日志对象 log,直接使用
@RequiredArgsConstructor 为 final 字段生成构造器(依赖注入推荐方式)
@AllArgsConstructor 为所有字段生成构造器
@NoArgsConstructor 生成无参构造器(JPA 必需)
@Getter / @Setter 仅生成 getter 或 setter
@EqualsAndHashCode 自定义 equals 和 hashCode 逻辑
@Value 不可变对象(所有字段 final + getter,无 setter)
@Delegate 委托模式,将方法调用转发给被注解的字段

Spring 注解注释增强表

注解 注释补充要点
@Transactional 事务传播行为、隔离级别、回滚条件
@Cacheable 缓存 Key 规则、TTL、缓存名称
@CacheEvict 清除时机、是否清空整个缓存
@Scheduled Cron 表达式含义、执行频率
@Async 异步线程池、返回值处理
@Retryable 重试次数、退避策略、重试条件
@CircuitBreaker 熔断阈值、降级策略
@Validated 校验组、级联校验
@PreAuthorize SpEL 权限表达式含义

完整示例:从 Controller 到 Entity

src/main/java/com/example/demo/
├── controller/
│   └── UserController.java          ← @RestController + JavaDoc
├── service/
│   ├── UserService.java             ← @Service + @Transactional JavaDoc
│   └── impl/
│       └── UserServiceImpl.java
├── repository/
│   └── UserRepository.java          ← @Repository JavaDoc
├── entity/
│   └── User.java                    ← @Entity + Lombok JavaDoc
├── dto/
│   ├── UserRegisterDTO.java         ← 校验注解 + 字段注释
│   └── UserVO.java                 ← 视图对象字段说明
└── config/
    └── RedisCacheConfig.java        ← @Configuration JavaDoc

输出校验清单

完成后自行检查:
- [ ] 每个 public 类都有 JavaDoc
- [ ] 每个 public 方法都有 JavaDoc(含 @param/@return/@throws)
- [ ] 所有 Spring 注解都有语义说明
- [ ] 所有 Lombok 注解都在类注释中提及
- [ ] 无业务逻辑被修改
- [ ] 无废话注释
- [ ] 行内注释解释「为什么」而非「做什么」
- [ ] 复杂算法有复杂度说明
- [ ] 事务方法注明回滚策略
- [ ] 缓存方法注明 Key 和 TTL

常见问题

5 问
答案由本站依据条目字段整理
Java 代码注释规范工具包怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_67a4acd9/springboot-skill。安装方式为未标注。装完刷新技能列表或重开客户端。

Java 代码注释规范工具包支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

Java 代码注释规范工具包权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

Java 代码注释规范工具包收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

Java 代码注释规范工具包用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 2026-11-06。