JDBC (Java Database Connectivity) provides Java applications with access to most database systems via SQL. It defines a standard API for accessing databases in Java. The key classes and interfaces in JDBC include DriverManager, Connection, Statement, PreparedStatement, ResultSet, and DatabaseMetaData. JDBC applications use the DriverManager to obtain a Connection to a database, then execute SQL statements using Statement or PreparedStatement objects to return ResultSet objects containing query results.