mcpField
3
311-frameworks-spring-jdbc

311-frameworks-spring-jdbc

github.com/jabrena开发456334 次安装1 天前更新
代码仓库

关于 311-frameworks-spring-jdbc

用于在 Java 项目中应用 Spring JDBC 实践的 Skill,默认采用 Spring Framework 7+ 的 JdbcClient。内容涵盖安全 SQL、事务处理、结果集处理和验证要求。

主要功能

  1. 01优先采用 JdbcClient 的查询与更新
  2. 02参数化 SQL
  3. 03事务与异常处理
  4. 04批量更新和生成键
  5. 05使用 @JdbcTest 测试 JDBC

适用场景

  1. 01审查 Spring JDBC 代码
  2. 02查找 SQL 注入风险
  3. 03重构数据访问与事务

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jabrena/plinth --skill 311-frameworks-spring-jdbc

安装后在 Claude Code 中输入/311-frameworks-spring-jdbc确认已加载。

附带文件references/311-frameworks-spring-jdbc.md

详细介绍

Spring JDBC — JdbcClient(Spring Framework 7+)

遵循 Spring JDBC 指南,并默认使用 JdbcClient;仅在处理遗留代码或 JdbcClient 未涵盖的 API(批量更新、KeyHolder、RowCallbackHandler 流式处理)时使用 JdbcTemplate / NamedParameterJdbcTemplate。

此技能涵盖哪些内容?

  • 参数化 SQL(绝不拼接用户输入)
  • JdbcClient 流式 API(Spring Framework 7+)——查询和更新的首选方案
  • 通过 JdbcClient 使用命名参数;用于遗留代码迁移的 NamedParameterJdbcTemplate
  • RowMapper、query(Class) 和 record
  • 批量操作和生成的键(必要时使用 JdbcTemplate / JdbcOperations)
  • 安全处理生成的键(KeyHolder;JdbcClient 单行更新)
  • 服务层 @Transactional 边界
  • 只读事务(@Transactional(readOnly = true))
  • 安全获取单行数据(optional() / findFirst() 与 queryForObject)
  • 流式处理大型结果集(RowCallbackHandler、ResultSetExtractor)
  • DataAccessException 处理(DuplicateKeyException、EmptyResultDataAccessException)
  • 使用 @Sql 固件进行 @JdbcTest 切片测试

范围: 根据参考规则和良好 / 不良代码示例应用建议。

限制

应用任何 Spring JDBC 更改之前,确保项目可以编译。如果编译失败,请立即停止。应用改进后,运行完整验证。

  • 强制要求:应用任何更改之前,运行 ./mvnw compile 或 mvn compile
  • 安全要求:如果编译失败,请立即停止
  • 验证要求:应用改进后,运行 ./mvnw clean verify 或 mvn clean verify
  • SQL 注入:绝不将不可信输入拼接到 SQL 字符串中——始终使用绑定参数
  • 应用更改之前:阅读参考文档,了解详细规则和良好 / 不良模式

何时使用此技能

  • 审查使用 Spring JDBC(JdbcTemplate、JdbcClient、NamedParameterJdbcTemplate)的 Java 代码
  • 在 Java 代码中应用 Spring JDBC 数据访问最佳实践
  • 检测并修复 JDBC 代码中的 SQL 注入风险
  • 改进 JDBC 操作的事务边界或异常处理
  • 审查 Spring Framework 7 中的 JdbcClient 用法

工作流

  1. 阅读参考文档并评估项目上下文

阅读 references/311-frameworks-spring-jdbc.md,并检查当前项目设置,然后再提出更改建议。

  1. 确定范围并选择目标改进

识别所需结果、限制,以及要应用的最小安全更改集。

  1. 应用符合框架规范的更改

按照参考模式和项目约定实现或重构配置 / 代码。

  1. 运行验证并报告结果

执行适当的构建 / 测试,并总结更改内容、验证情况以及任何后续操作。

参考

详细指南、示例和限制请参阅 references/311-frameworks-spring-jdbc.md。

评论

支持 Markdown