戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

基本情報技術者 2011年 春期 午前(科目A)32


問題文

Javaのアプリケーションプログラムがデータベースにアクセスするための標準的なAPI (Application Program Interface)はどれか。

選択肢

HTML
Java VM
JDBC(正解)
SQL

🔒 解説は解答すると表示されます

JDBCによるデータベース接続【午前解説】

正解の理由

選択肢の中で、Javaプログラムからデータベースにアクセスする「標準的なAPI」を示すのは(JDBC)です。
JDBC(Java Database Connectivity)はJava標準のAPIで、DriverManager/Connection/Statement/PreparedStatement/ResultSetなどのインタフェースを通じて、データベースへの接続、SQLの送信、結果の取得といった操作を行います。JDBCドライバを用意することで、様々なDB(Oracle、MySQL、PostgreSQLなど)に同一のAPIでアクセス可能です。

解法ステップ

  1. 問題文のキーワード「Java」「データベース」「標準的なAPI」を確認する。
  2. 選択肢を役割で比較する(HTML=マークアップ、JVM=実行環境、SQL=言語、JDBC=API)。
  3. APIとしての機能(接続、SQL送信、結果取得)を満たすものを選ぶ。
  4. 該当するのはJDBCなのでを選択する。

選択肢別の誤答解説

  • ア: HTML
    • 誤り。HTMLはハイパーテキストマークアップ言語で、Webページ記述用。DBアクセスAPIではありません。
  • イ: Java VM
    • 誤り。JVM(Java Virtual Machine)はJavaバイトコードを実行する仮想マシンで、DB操作のためのAPIを提供するものではありません。
  • ウ: JDBC
    • 正解。JDBCはJava用のデータベース接続APIで、接続管理・SQL実行・結果取得のための標準的なインタフェースを提供します。
  • エ: SQL
    • 誤り。SQLはデータベース操作のための言語(問い合わせ文)であり、JavaからSQLを送るためのAPIではありません。

よくある誤解

  • 「SQL自体がAPIだ」と考える誤解:SQLはデータ操作言語であり、Java側からSQLを送るためのインタフェースがJDBCです。
  • 「Java VMがDBアクセスAPIだ」と思う誤解:JVMはバイトコードを実行する環境であり、DB接続機能を提供するAPIではありません。
  • 「JDBCとJPA/ORMを同じものとみなす誤解」:JPAやHibernateは上位レイヤのORMで、内部的にJDBCを使ってDBとやり取りします。

補足コラム

JDBCの基本的な流れは「ドライバの用意 → Connection取得 → PreparedStatement/StatementでSQL実行 → ResultSetで取得 → リソース解放」です。JDBC URLやドライバ(jar)がクラスパスに必要です。簡単な接続例を示します。
import java.sql.*;

public class Example {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/mydb";
        String user = "user";
        String pass = "password";
        String sql = "SELECT id, name FROM users WHERE active = ?";

        try (Connection conn = DriverManager.getConnection(url, user, pass);
             PreparedStatement ps = conn.prepareStatement(sql)) {

            ps.setBoolean(1, true);
            try (ResultSet rs = ps.executeQuery()) {
                while (rs.next()) {
                    System.out.println(rs.getInt("id") + ": " + rs.getString("name"));
                }
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}
ポイント:
  • PreparedStatementはSQLインジェクション対策やパラメータの扱いで推奨されます。
  • JDBCは低レイヤのAPIなので、ORM(JPA/Hibernate等)はより高レベルの抽象化を提供し、内部でJDBCを利用します。

FAQ

Q1: JDBCはJavaの標準ライブラリに含まれますか?
A1: java.sqlやjavax.sqlのインタフェースは標準APIに含まれますが、各データベース用のJDBCドライバはベンダー提供のライブラリをプロジェクトに追加する必要があります。
Q2: JDBCとJPAはどちらを使えばよいですか?
A2: 小規模で単純な処理や細かいSQL制御が必要ならJDBC、エンティティマッピングや生産性・保守性を優先するならJPA/ORMがおすすめです。両者は併用可能です。
Q3: SQLだけ知っていればJDBCは使えますか?
A3: SQLの知識は必要ですが、JDBC特有の接続管理・例外処理・リソース解放などの扱いも学ぶ必要があります。

関連キーワード: JDBC、JDBCドライバ、DriverManager、Connection、PreparedStatement、ResultSet、SQL、ORM、データベース、Java
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

基本情報技術者
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について