К основному содержанию
скилл CX Codex

411-frameworks-quarkus-jdbc — скилл для Claude Code: JDBC в Quarkus

Скилл для програмного JDBC в Quarkus: Agroal DataSource, параметризованный SQL, транзакции, батчи и Dev Services. Пригодится при ревью доступа к данным.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add jabrena/plinth --skill 411-frameworks-quarkus-jdbc -a claude-code
Открыть на GitHub

Что делает 411-frameworks-quarkus-jdbc

Скилл разбирает доступ к данным в Quarkus через javax.sql.DataSource с бэкендом Agroal. Внутри — правила и примеры хорошего и плохого кода: PreparedStatement с bind-параметрами вместо склейки строк, маппинг строк ResultSet в Java-рекорды через отдельный метод, одиночные запросы через Optional<T> без надежды на то, что rs.next() вернёт true.

Отдельно разобраны транзакции: границы @Transactional в сервисах, типы распространения вроде TxType.REQUIRES_NEW для независимых коммитов и ловушка CDI self-invocation, когда вызов транзакционного метода идёт мимо инжектированного прокси. Ещё есть трансляция SQLException в доменные исключения по схеме catch-translate-rethrow, стриминг больших выборок через setFetchSize и батчи addBatch / executeBatch для массовых вставок.

Перед любыми правками скилл требует, чтобы проект компилировался: сначала ./mvnw compile или mvn compile, и если сборка падает, работа останавливается до того, как ошибки починит пользователь. После изменений — ./mvnw clean verify или mvn clean verify. Это значит, что на проекте с уже сломанной сборкой скилл просто не стартует.

Какие задачи решает

  • переписать склейку SQL на bind-параметры
  • починить self-invocation, из-за которого @Transactional не срабатывает
  • вынести SQLException в доменные исключения
  • стримить большую выборку без падения по памяти
  • собрать массовую вставку через батч

Примеры запросов агенту

  • Проверь JDBC и доступ к данным в этом Quarkus-проекте
  • Поправь транзакции и привязку параметров в Quarkus JDBC
  • Разбери использование Agroal DataSource в этом модуле

Как установить 411-frameworks-quarkus-jdbc

1Через Skills CLI (Vercel)

npx skills add jabrena/plinth --skill 411-frameworks-quarkus-jdbc -a claude-code

2Вручную: положить файлы

~/.claude/skills/411-frameworks-quarkus-jdbc/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/411-frameworks-quarkus-jdbc/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора40

323-frameworks-spring-boot-testing-acceptance-tests Скилл превращает согласованные Gherkin-сценарии в приёмочные тесты Spring Boot: TestRestTemplate, Testcontainers, WireMock. CX Codex +1 324установок 401-frameworks-quarkus-core Скилл для ревью и правки ядра Quarkus: CDI-бины, профили, интерцепторы, виртуальные потоки. Пригодится, когда проект на Java уже собирается и пора навести порядок в конфигурации. CX Codex +1 321установок 114-java-maven-search Разбирает отчёты об устаревших зависимостях и плагинах в вашем pom.xml и помогает искать координаты артефактов Maven. CX Codex +1 315установок 413-frameworks-quarkus-db-migrations-flyway Скилл для ИИ-агента, который добавляет и проверяет миграции Flyway в приложении на Quarkus: расширение quarkus-flyway, SQL-скрипты, настройки и порядок применения. CX Codex +1 313установок 701-technologies-openapi Помогает привести контракт OpenAPI 3.x в порядок: структура спецификации, схемы, security, проверка на ломающие изменения. Пригодится, когда API-контракт живёт отдельно от кода. CX Codex +1 309установок 303-frameworks-spring-boot-validation Скилл для ИИ-агента, который наводит порядок в валидации Spring Boot: Bean Validation на DTO, @Valid на границах API, группы ограничений и единый формат ошибок 400. CX Codex +1 303установок 512-frameworks-micronaut-data Скилл для работы с репозиториями и сущностями Micronaut Data: маппинг, транзакции, пагинация, проекции и тесты на Testcontainers. CX Codex +1 303установок 501-frameworks-micronaut-core Скилл для ревью и правки Java-кода на Micronaut: бины, конфигурация, @Requires, планировщик и работа с блокирующим I/O. CX Codex +1 302установок

Похожие

sql-jdbc-access-design Samuel Berthe Проектирует, как продукт отдаёт клиентам свои данные по SQL: JDBC/ODBC-эндпоинт, шару в хранилище или хостед-запросы. Пригодится до того, как подключится первый клиент. CX Codex +1 7 800установок quarkus Mindrally Скилл задаёт агенту правила кода на Quarkus: Jakarta EE, MicroProfile, нативные сборки GraalVM и реактивные паттерны. CX Codex +1 1 000установок quarkus-native-and-container официальный github Помогает собрать нативный исполняемый файл Quarkus, починить ошибки reflection и сделать образ контейнера с манифестами Kubernetes. ★ 40 418звёзд репо java-coding-standards affaan-m Скилл применяет правила Java к коду для Spring Boot и Quarkus. Подключайте его при написании или ревью сервисов на этих фреймворках. CX Codex +1 5 100установок neo4j-driver-java-skill neo4j-contrib Подсказывает агенту, как подключить Java или Kotlin к Neo4j: драйвер, сессии, транзакции, пул соединений. CX Codex +1 770установок graalvm-native-image giuseppe-trisciuoglio Скилл помогает компилировать Java-приложения в нативные бинарники с помощью GraalVM Native Image. Пригодится для сокращения времени холодного старта и потребления памяти. CX Codex +1 3 500установок

Рядом в теме «Бэкенд и API»

Всё по теме «Бэкенд и API» →

Вопросы о 411-frameworks-quarkus-jdbc

Как установить 411-frameworks-quarkus-jdbc в Claude?

Выполните npx skills add jabrena/plinth --skill 411-frameworks-quarkus-jdbc -a claude-code. Скилл окажется в ~/.claude/skills/411-frameworks-quarkus-jdbc/SKILL.md.

Что делает 411-frameworks-quarkus-jdbc?

Проводит по паттернам програмного JDBC в Quarkus: DataSource, параметризованный SQL, транзакции, батчи и Dev Services для баз в dev и test. Работает по справочнику с примерами кода.

Что нужно, чтобы скилл заработал?

Проект должен компилироваться до применения правок — скилл запускает ./mvnw compile или mvn compile и останавливается при ошибках сборки.

Исходный текст

SKILL.md · Apache-2.0
---
name: 411-frameworks-quarkus-jdbc
description: Use when you need programmatic JDBC in Quarkus — Agroal DataSource, parameterized SQL, transactions, batching, and Dev Services. This should trigger for requests such as Review JDBC or SQL data access in a Quarkus project; Improve transactions and parameter binding for Quarkus JDBC; Translate SQLException to domain exceptions or stream large result sets; Fix CDI self-invocation bypassing @Transactional in Quarkus; Review Agroal DataSource usage in Quarkus JDBC. Part of Plinth Toolkit
license: Apache-2.0
metadata:
  author: Juan Antonio Breña Moral
  version: 0.19.0
---
# Quarkus JDBC — programmatic SQL

Apply programmatic JDBC patterns in Quarkus with safe SQL and clear transactions.

**What is covered in this Skill?**

- Injected javax.sql.DataSource (Agroal-backed) and try-with-resources for Connection / PreparedStatement
- PreparedStatement with bind parameters — never string concatenation
- Mapping ResultSet rows to Java records (dedicated mapRow method)
- Safe single-row queries with Optional<T>; never assume rs.next() succeeds
- SQLException translation to domain exceptions (catch-translate-rethrow)
- Streaming large result sets with setFetchSize to avoid OOM
- Batch updates with addBatch / executeBatch for bulk inserts
- @Transactional service boundaries and propagation types (TxType.REQUIRES_NEW for independent commits)
- CDI self-invocation pitfall: always call transactional methods through the injected proxy
- Dev Services for databases in dev/test
- When to prefer Panache (`@412`) vs raw JDBC

**Scope:** Apply recommendations based on the reference rules and good/bad code examples.

## Constraints

Compile before JDBC refactors; verify after changes.

- **MANDATORY**: Run `./mvnw compile` or `mvn compile` before applying any change
- **PREREQUISITE**: Project must compile before applying JDBC improvements
- **SAFETY**: If compilation fails, stop immediately
- **BLOCKING CONDITION**: Compilation errors must be resolved by the user before proceeding
- **VERIFY**: Run `./mvnw clean verify` or `mvn clean verify` after applying improvements
- **BEFORE APPLYING**: Read the reference for detailed rules and examples

## When to use this skill

- Review JDBC or SQL data access in a Quarkus project
- Improve transactions and parameter binding for Quarkus JDBC
- Translate SQLException to domain exceptions or stream large result sets
- Fix CDI self-invocation bypassing @Transactional in Quarkus
- Review Agroal DataSource usage in Quarkus JDBC

## Workflow

1. **Read reference and assess project context**

Read `references/411-frameworks-quarkus-jdbc.md` and inspect the current project setup before proposing changes.

2. **Gather scope and decide target improvements**

Identify requested outcomes, constraints, and the minimum safe set of changes to apply.

3. **Apply framework-aligned changes**

Implement or refactor configuration/code following the reference patterns and project conventions.

4. **Run verification and report results**

Execute appropriate build/tests and summarize what changed, what was verified, and any follow-up actions.

## Reference

For detailed guidance, examples, and constraints, see [references/411-frameworks-quarkus-jdbc.md](references/411-frameworks-quarkus-jdbc.md).

© Juan Antonio Breña Moral · Apache-2.0 · jabrena/plinth

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой