Agent skill

511-frameworks-micronaut-jdbc

Use when you need programmatic JDBC in Micronaut — pooled DataSource, parameterized SQL, io.micronaut.transaction.annotation.Transactional, batching, and domain exception translation. Part of the skills-for-java project

Stars 350
Forks 63

Install this agent skill to your Project

npx add-skill https://github.com/jabrena/cursor-rules-java/tree/main/skills/511-frameworks-micronaut-jdbc

Metadata

Additional technical details for this skill

author
Juan Antonio Breña Moral
version
0.14.0

SKILL.md

Micronaut JDBC — programmatic SQL

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

What is covered in this Skill?

  • Injected javax.sql.DataSource (Hikari-backed with micronaut-jdbc-hikari) 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 TransactionDefinition.Propagation (e.g. REQUIRES_NEW for independent commits)
  • Self-invocation pitfall: call transactional collaborators through injected beans, not this.method()
  • SQL text blocks for multi-line SQL (upserts, dialect-specific clauses)
  • When to prefer Micronaut Data (@512) 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 Micronaut project
  • Improve transactions and parameter binding for Micronaut JDBC
  • Translate SQLException to domain exceptions or stream large result sets
  • Fix self-invocation bypassing @Transactional in Micronaut

Reference

For detailed guidance, examples, and constraints, see references/511-frameworks-micronaut-jdbc.md.

Expand your agent's capabilities with these related and highly-rated skills.

jabrena/cursor-rules-java

513-frameworks-micronaut-db-migrations-flyway

Use when you need to add or review Flyway database migrations in a Micronaut application — micronaut-flyway, db/migration scripts, flyway.datasources.* configuration, and alignment with JDBC or Micronaut Data. Part of the skills-for-java project

350 63
Explore
jabrena/cursor-rules-java

014-agile-user-story

Guides the creation of agile user stories and Gherkin feature files. Use when the user wants to create a user story, write acceptance criteria, define Gherkin scenarios, or author BDD feature files. Part of the skills-for-java project

350 63
Explore
jabrena/cursor-rules-java

502-frameworks-micronaut-rest

Use when you need to design, review, or improve REST APIs with Micronaut — including @Controller routes, HTTP status codes, DTOs, Bean Validation, exception handlers, pagination, idempotency, ETag/If-Match, caching headers, versioning, contract-first OpenAPI (OpenAPI Generator), optional runtime OpenAPI via micronaut-openapi, and security annotations. Part of the skills-for-java project

350 63
Explore
jabrena/cursor-rules-java

114-java-maven-search

Covers Maven Central search (Search API, maven-metadata.xml, artifact URLs) and project-local update reports via versions-maven-plugin (display-property-updates, display-dependency-updates, display-plugin-updates). Use when finding or verifying coordinates, browsing Central, or checking what newer versions apply to the user’s pom.xml. Part of the skills-for-java project

350 63
Explore
jabrena/cursor-rules-java

323-frameworks-spring-boot-testing-acceptance-tests

Use when you need to implement acceptance tests from a Gherkin .feature file for Spring Boot applications — including finding scenarios tagged @acceptance, implementing happy path tests with TestRestTemplate, @SpringBootTest, Testcontainers with @ServiceConnection for DB/Kafka, and WireMock for external REST stubs. Requires .feature file in context. Part of the skills-for-java project

350 63
Explore
jabrena/cursor-rules-java

200-agents-md

Use when you need to generate an AGENTS.md file for a Java repository — covering project conventions, tech stack, file structure, commands, Git workflow, and contributor boundaries — through a modular, step-based interactive process that adapts to your specific project needs. Part of the skills-for-java project

350 63
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results