この記事について
OracleJavaSE11 goldを勉強していた時になかなか覚えられないな〜っとなっていた内容を毎回見ることができるようにこちらの書籍で勉強していた時のまとめたものです!
おすすめ書籍(勉強開始時点の書籍最新版を購入しましょう)
各カテゴリごとでまとめていますので隙間時間に見てみてください。
JDBC
DBMSを共通して扱えるように、java.sqlパッケージやjavax.sqlパッケージを提供する。インタフェースを実装したクラスは各ベンダが提供する。
接続文字列
jdbc:dbms名?://サーバのIPアドレス:ポート番号/データベースの場所
java.sql.connection
DBMSとのコネクションを管理する
close()
コネクションを閉じる
java.sql.DriveManager
提供されたドライバを検索しDBMSに接続するクラス
getConnection()
java.sql.connectionの実装クラスのインスタンス参照、接続文字列を受けとる
preparedCall()
呼び出すストアドプロシージャを引数に渡し、java.sql.CallableStatement型を戻り値で受けとる
例:CALL 名称(?とかの引数)
java.sql.Statement
パラメーターなしのSQL文を扱う、実行時にDBMSでコンパイル、スーパーインタフェース
enquoteldentifier()
引数に引用符をつけられた文字列を返す、インジェクション対策に一定の効果がある
java.sql.PreparedStatement
準備された文という意味、パラメータを受けとるSQL文を扱う、実行前にプログラムでコンパイルするため処理が早い
setXXX()
?を使用した箇所に代入、1から始まる
executeUpdate()
データの挿入、更新、削除を行う
executeQuery()
検索をおこなう
execute()
updateかqueryを行う。インジェクションの脆弱性あり
戻り値としてresultsetが戻ってきたか真偽値を返す、resultsetならtrue
addBatch()
SQLの登録
executeBatch()
一度に複数のsqlを実行できる、各SQLの結果を件数で返す
getUpdateCount()
更新されたレコード件数を返す
java.sql.CallableStatement
DBMSに登録されたストアドプロシージャを実行する
ストアドプロシージャ
sqlと専門の言語を組み合わせてDBMSに保存、ん実行する
○java.sql.ResultSet
検索結果を表として表現し、カーソルを動かしてレコード出力する
next()
カーソル移動、resultsetの初期位置は0なので絶対必要
getXXX()
列の型に合わせて、引数のカラムまたはリテラルに応じて取得