Spring JDBCとPlain JDBCの違いは?質問する

Spring JDBCとPlain JDBCの違いは?質問する

Spring JDBC と JDBC の主な違いは何ですか?

ベストアンサー1

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-with-resources を使用すると、はるかに良くなります。

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);
}

もちろん共通コードを抽出して使用することもできますテンプレートメソッドデザインパターン。実質的には、次のものを再発明することになりますJdbcTemplate

final int c = new JdbcTemplate(ds).queryForInt("SELECT COUNT(*) FROM Orders");

SQLExceptionまた、Spring JDBC は例外変換 (データベース/方言間の相違のチェックが不要) とシンプルな ORM 機能も提供します。

おすすめ記事