DAO
In plain terms
An object that abstracts and encapsulates data-source access.
Going deeper
A Data Access Object provides an interface for database operations, isolating persistence logic from business code. It hides storage details behind methods.
Under the hood
Similar intent to the repository pattern but typically lower-level/CRUD-focused per table.
Examples
Database access layers, CRUD operations, JDBC/ORM wrappers, persistence.
Think of it like...
Like a clerk who handles all filing-cabinet access so others never touch the drawers directly.