Позвольте мне показать вам простой пример использования JDBC:
final Connection connection = ds.getConnection();
try {
final Statement statement = connection.createStatement();
try {
final ResultSet resultSet = statement.executeQuery("SELECT COUNT(*) FROM Orders");
try {
resultSet.next();
final int c = resultSet.getInt(1);
} finally {
resultSet.close();
}
} finally {
statement.close();
}
} finally {
connection.close();
}
Гораздо лучше, когда попробуй с ресурсами:
try (
Connection connection = ds.getConnection();
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT COUNT(*) FROM Orders");
) {
resultSet.next();
final int c = resultSet.getInt(1);
}
Конечно, вы можете извлечь общий код и использовать шаблонный метод Design Pattern. Фактически, вы бы заново изобрели JdbcTemplate
:
final int c = new JdbcTemplate(ds).queryForInt("SELECT COUNT(*) FROM Orders");
Также Spring JDBC обеспечивает преобразование исключений (больше не проверено SQLException
и различия между базами данных / диалектами) и простые возможности ORM.