liveBook · Manning

Relational model

As explained in Java Persistence with Spring Data and Hibernate epub

The relational data model represents information as relations consisting of tuples and attributes with defined integrity constraints.

The relational model organizes persistent business information into relations with tuples, attributes, and integrity constraints. Relational databases offer a flexible, robust foundation for shared enterprise data because the data remains independent of any single Java application or platform. section 1.1.1

A relational system supports several complementary responsibilities:

  • Define and evolve database artifacts such as tables and constraints with SQL DDL. section 1.1.2
  • Manipulate stored data with insertions, updates, and deletions, then retrieve it through restrictions, projections, joins, aggregation, grouping, and subselects. section 1.1.2
  • Control access by granting or revoking permissions with SQL DCL. section 1.1.2
  • Share the same persistent representation across applications, such as data-entry and reporting systems, without coupling it to Java. section 1.1.1

Using a relational database from Java

A Java application reaches the database through JDBC. The application prepares SQL, binds query arguments, executes statements, scrolls through results, and retrieves values from a result set. These operations expose the low-level work that object-persistence frameworks such as Hibernate and Spring Data aim to reduce. section 1.1.3

Relational persistence is a strong general-purpose choice, but not a universal one. Internet-scale distributed systems may favor weak consistency, while specialized scientific datasets may require custom persistence solutions; generic SQL and Java persistence tools then play a smaller role. section 1.1.3

How Java Persistence with Spring Data and Hibernate epub covers it

How deep it goes
Explains integrity, independence, SQL operations, and JDBC access, but stops short of relational execution internals.
Examples
Uses DDL, DML, DQL, DCL, joins, aggregation, subselects, and JDBC result-set processing as concrete applications.
What it assumes
Assumes SQL familiarity while requiring understanding of the relational model, information modeling, normalization, and performance tuning.
What you can do after
Apply it via SQL and JDBC while recognizing when object-persistence frameworks or alternative consistency models are appropriate.
How it connects
Connects the relational model to SQL, normalization, schema evolution, JDBC, Hibernate, Spring Data, and data independence.

Also explained in

Compare how 2 books explain relational model →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Java Persistence with Spring Data and Hibernate epub. The section links point to the parts of the book it draws on.