Release 0.1.0
Overview
Section titled “Overview”Kaumei JDBC 0.1.0 is our first public preview. It focuses on proving that annotation processing can generate practical JDBC code without hiding SQL or leaning on reflection. Expect APIs to change before 1.0.0, but the core experience is ready for early adopters.
Highlights
Section titled “Highlights”- code generation: Annotated interfaces automatically gain JDBC implementations with compile-time binding validation.
- SQL-first workflow:
@JdbcSelect,@JdbcUpdate,@JdbcBatch, and@JdbcNativekeep SQL inline so reviews always see the queries being executed. - Type-safe mapping:
Map records, enums, and records, and register converters with
@JdbcToJavaor@JavaToJdbcfor bidirectional conversions. - Batch execution: Run batch updates with static or dynamic sizes while the generated code manages parameter binding and resource cleanup.
- Generated values: Capture keys or columns from single-row updates directly into Java types.
- Modern collections:
Return
List,Stream, or scalar values from methods. - Integration hooks:
Runtime code only needs a
JdbcConnectionProvider, making it easy to wire into Spring, Micronaut, Quarkus, or plain Java apps.
Installation
Section titled “Installation”Artifacts perform as 0.1.0 on Maven Central.
Follow the installation guide to add
jdbc-annotation, jdbc-core, and jdbc-processor with the same version and to
enable annotation processing in your build.
Known limitations
Section titled “Known limitations”- IntelliJ occasionally drops annotation-processing classpath entries.
If generated code is missing in the IDE, run
mvn compileto confirm the build works; we are working on this item. - Loading SQL from the classpath.
- Calling stored procedures.
- Error messages can be improved.
Road to 1.0.0
Section titled “Road to 1.0.0”During the 0.x series we will:
- Gather feedback and evaluate whether this approach is useful in practice.
- Stabilise the annotation processor output and contract tests.
- Fill the remaining converter and integration gaps.
- Improve diagnostics when code generation fails.
If there is little interest or feedback, the project may simply stay as it is.
Feedback is welcome on GitHub discussions or GitHub issues.