タグ

jdbcに関するtyruのブックマーク (4)

  • Tomcat 7.xとTomcat 8.xのJDBC Driverの扱いの違い - なみひらブログ

    Tomcat 7.xまでは、JDBC Driverは{webapp}/WEB-INF/libなどに置いていましたが、Tomcat 8.xだとTOMCAT_HOME/libに置かないといけなくなった。 理由としては、そもそもJDBC DriverはDriverManagerで管理されていて、そもそもそれは全アプリで共有される資源だかららしい。 Tomcat 7.x以前でもその仕組みだったけど(ログにWARNING出力されていた。)、Tomcat 8.xでその扱いを厳密にした形。 参考Apache Tomcat 8 (8.0.8) - Changelog spring - Tomcat 8 can't see MySQL Driver - Stack Overflow tomcat - Why jdbc driver must been put in TOMCAT_HOME/lib folde

    Tomcat 7.xとTomcat 8.xのJDBC Driverの扱いの違い - なみひらブログ
    tyru
    tyru 2014/12/13
    「JDBC Driverは{webapp}/WEB-INF/libなどに置いていましたが、Tomcat 8.xだとTOMCAT_HOME/libに置かないといけなくなった」「そもそもJDBC DriverはDriverManagerで管理されていて、そもそもそれは全アプリで共有される資源だから」
  • Apache Commons DbUtils - nodchipの日記

    Apache CommonsのDbUtilsはJDBCの補助ライブラリで、よく書くテンプレを簡略化することができます。DbUtilsを使うことでConnectionのcloseし忘れを防止することができたりもします。自分はQMACloneのデータベース部分にDbUtilsを使っています。 準備 解説では以下のMySQLのテーブルとJavaのclassを使います。 CREATE TABLE person ( id SERIAL PRIMARY KEY, name TEXT ); public class Person { public long id; public String name; public long getId() { return id; } public void setId(long id) { this.id = id; } public String getName

    Apache Commons DbUtils - nodchipの日記
    tyru
    tyru 2014/08/05
    うーん、生JDBCに比べてあんまりすっきりしたように感じない…
  • 「知恵ノート」は終了いたしました - Yahoo!知恵袋

    tyru
    tyru 2014/08/03
    JDBC経由でDriver(jar)指定すればどんなDBでも扱える。Ctrl+Enterで実行とCtrl+Shift+Enterで選択した箇所のみ実行。できればショートカットキーでSQL文のテンプレート挿入も欲しかったけど、これで充分かな。
  • Class.forName で DB アクセスできるようになる理由 - すぱいだー日記。

    Java の研修で DB(だいたいMDBかな) にアクセスするプログラムを作ることになったとき、講師はほぼ 100% 「JDBC Driver を使用するためには Class.forName を使用します」と言うはず。ただ、呪文のごとく。 で、Class.forName の API を見てみる。 forName(String name, boolean initialize, ClassLoader loader) 指定されたクラスローダを使って、指定された文字列名を持つクラスまたはインタフェースに関連付けられた Class オブジェクトを返します そして疑問が生まれる。「クラスをロードするだけでなんでDBにアクセスできるようになるの?」と。 講師はなぜできるかは説明しない。分かってないってことは無いと思うけど「まだ初心者だから覚えとけばいい」的な感じだろう。 けど、ここは言わせてもらう!

    Class.forName で DB アクセスできるようになる理由 - すぱいだー日記。
    tyru
    tyru 2014/08/03
    「各ベンダのJDBC Driverはjava.sql.Driverを実装している必要があり、その実装クラスはstatic initializerでjava.sql.DriverManager.registerDriver(java.sql.Driver)を使って登録している」なんでそんな仕様に。staticメソッドとかじゃダメだったの?
  • 1