Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a232fb9e9a2acc78

Jump to content

Draft:HotRod ORM Suite

From Wikipedia, the free encyclopedia

HotRod
Stable release
5.1.24 / July 12, 2026; 18 days ago (2026-07-12)[1]
Written inJava
Operating systemCross-platform
PlatformJava
TypeObject–relational mapping
LicenseDual-licensed: Apache-2.0
Websitegithub.com/hotrodorm/hotrod
Repositorygithub.com/hotrodorm/hotrod

HotRod ORM Suite, HotRod 5 is an open-source Object-Relational Mapping (ORM) suite of products designed for Spring and Spring Boot, focused on rapid development and high-performance persistence in relational databases. Ir provides a full-featured API to retrieve and update data from and to a database using classes generated from a database schema.

HotRod follows the database-first approach, where the persistence layer is generated and updated from existing database schemas with tables and views.

Modules

[edit]

The HotRod suite includes:

  • CRUD - The main persistence layer that includes the operations for INSERT, UPDATE, SELECT, and DELETE
  • LiveSQL - Flexible SQL querying directly from the applications with live syntax validation
  • Nitro - To use any SQL query, including native extensions, combined with dynamic SQL as necessary
  • Torcs - To identify slow queries at runtime and retrieve their execution plans

Highligths

[edit]

This suite compares to other ORMs products:

  • Entity Tuples: retrieves separated tuples from joins
  • Automated schema discovery: discovers the tables and views in the schemas and prepares the persistence sayer
  • Automated schema update: updates the persistence layer from schema changes without losing custom changes
  • Comprehensive data type resolution: default and rule-based type resolution mapping
  • Feature-rich LiveSQL: LiveSQL includes a developed and customizable expression language to express simple to complex queries
  • Built-in low performace query detection: Torcs automatically detects and ranks slow queries by different criteria

More features are described at [1]

Examples

[edit]

To compute the value of 3 * 7 in the database:

Row row = sql.select(sql.val(3).mult(7).as("total")).executeOne();

System.out.println("total=" + row.get("total")); // total=21

To select from a table:

List<Tuple1<Product>> rows = sql
  .select(p.star(), p.shipping.plus(p.tax).minus(p.discount).as("net"))
  .tuples()
  .from(p)
  .where(p.shipping.plus(p.tax).minus(p.discount).le(10))
  .orderBy(p.category, p.name.desc())
  .limit(50)
  .execute();

for (Tuple1<Product> r : rows) {
  Product prod = r.getA(); // all columns correctly named, cast, typed, and/or converted here
  System.out.println("Product: " + prod);
  System.out.println("Net: " + r.get("net"));
}

A join can be expressed as:

List<Tuple2<Invoice, Client>> rows = sql
  .select(i.star(), c.star(), i.amount.mult(c.discountPct).as("appliedDiscount"))
  .tuples()
  .from(i)
  .join(c, c.id.eq(i.clientId))
  .where(c.branchName.upper().like("%SOUTH%"))
  .orderBy(c.id, i.purchaseDate.desc())
  .execute();

for (Tuple2<Invoice, Client> r : rows) {
  Invoice inv = r.getA(); // all columns correctly named, cast, typed, and/or converted here
  Client cli = r.getB();  // same here
  System.out.println("Invoice: " + inv);
  System.out.println("Client: " + cli);
  System.out.println("Applied Discount: " + r.get("appliedDiscount"));
}

References

[edit]
  1. ^ github.com https://github.com/hotrodorm/hotrod/releases/tags. Retrieved 2026-07-12. {{cite web}}: Missing or empty |title= (help)

Category:Object–relational mapping Category:Java (programming language) libraries Category:Java enterprise platform