Skip to content

Releases: EzFramework/JavaQueryBuilder

1.0.3

16 Apr 09:24
2d9419c

Choose a tag to compare

Added

  • SelectBuilder: fluent builder for SQL SELECT statements with support for
    columns, WHERE conditions, ORDER BY, GROUP BY, HAVING, LIMIT, OFFSET, and DISTINCT
  • CreateBuilder: fluent builder for SQL CREATE TABLE statements with support for
    columns, primary keys, and IF NOT EXISTS
  • QueryBuilder: unified static entry point for all builder types
    • select(), from() for SELECT queries
    • insert(), insertInto(table) for INSERT queries
    • update(), update(table) for UPDATE queries
    • delete(), deleteFrom(table) for DELETE queries
    • createTable(), createTable(table) for CREATE TABLE queries
  • Table-shortcut overloads on QueryBuilder: insertInto, deleteFrom, update(table),
    and createTable(table) to set the target table in a single call
  • whereIn support on DeleteBuilder

Fixed

  • DeleteBuilder: restored missing build() and build(SqlDialect) methods whose
    Javadoc was malformed and consumed the method body
  • DeleteBuilder: added missing imports (Connector, Operator, SqlDialect, SqlResult, Map)
  • DeleteBuilder: added appendDmlCondition helper to handle all comparison operators
    and resolve cyclomatic complexity violation; fixed duplicate /** on handleBetweenOperator
  • CreateBuilder: repaired malformed class-level Javadoc that contained an embedded
    method body, and fixed unclosed build(SqlDialect) Javadoc comment
  • QueryBuilder: removed redundant same-package imports, fixed import ordering,
    added complete Javadoc on all public API methods

1.0.2

15 Apr 15:49
923eed9

Choose a tag to compare

  • Fixed issue in Jitpack publish CI

1.0.1

15 Apr 15:45
d9cab48

Choose a tag to compare

Java 25

Updated the package to Java 25

1.0.0

15 Apr 14:39
8bba049

Choose a tag to compare

Highlights

  • Fluent, type-safe builder API for constructing SQL SELECT queries in Java
  • Parameterized SQL generation: All queries use ? placeholders and separate parameter lists, ensuring safety from SQL injection
  • Comprehensive operator support: =, !=, >, <, LIKE, IN, BETWEEN, IS NOT NULL, and more
  • Column selection, grouping, sorting, and pagination: Easily specify columns, GROUP BY, ORDER BY, LIMIT, and OFFSET
  • Multiple SQL dialects: Built-in support for Standard SQL and SQLite, with automatic identifier quoting and boolean handling
  • In-memory filtering: Use the same query objects to filter Java collections via the QueryableStorage interface
  • No runtime dependencies: Pure Java 21 library

Example Usage

SqlResult result = new QueryBuilder()
    .select("id", "name")
    .whereEquals("status", "active")
    .orderBy("name", true)
    .limit(10)
    .buildSql("users");

Architecture

  • Fluent builders for SELECT, INSERT, UPDATE, DELETE
  • Immutable Query objects
  • Pluggable SQL dialects
  • Full Javadoc and Checkstyle compliance