eclipse(DB ViewerPlugin) JDBCドライバーが多数存在する理由について

このQ&Aのポイント
  • eclipse(DB ViewerPlugin)で使用されるJDBCドライバーが複数存在する理由を教えてください。
  • eclipse3.4以降の「DB ViewerPlugin」では、MySQLの設定に複数のJDBCドライバーが存在します。これらのドライバーの用途や使用するべきドライバーについて教えてください。
  • MySQLの設定において、eclipse(DB ViewerPlugin)では複数のJDBCドライバーが利用できますが、テスト接続OKのドライバーを使用すれば問題ありませんか?
回答を見る
  • ベストアンサー

eclipse(DB ViewerPlugin) JDBCドライバーが多数存在する理由について

eclipse(DB ViewerPlugin) JDBCドライバーが多数存在する理由について教えてください。  eclipse3.4(all in one eclipse)より、  「DB ViewerPlugin」 を使用したMySQLの設定を行う際、  JDBCドライバーが複数存在しており、どれを使用するべきなのかがわかりません。 【ドライバーの種類と接続テスト結果】  1.com.mysql.jdbc.Driver → テスト接続OK  2.com.mysqljdbc.NonRegisteringDriver → テスト接続OK  3.com.mysqljdbc.NonRegisteringReplicationDriver → テスト接続NG  4.com.mysql.jdbc.ReplicationDriver → テスト接続NG  5.org.git.mm.mysql.Driver → テスト接続OK  これらのドライバーは何の用途あって複数のドライバーが存在しているのでしょうか?  テスト接続OKのものであれば、どれを使用しても問題はないでしょうか?

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • x_jouet_x
  • ベストアンサー率68% (162/236)
回答No.1

分かる範囲で回答しますね。 1.com.mysql.jdbc.Driver は、「MySQL Connector/J」と呼ばれる一般的なJDBCドライバです。 4.com.mysql.jdbc.ReplicationDriver は、MySQLでレプリケーション構成(Master/Slave)しているときに使用するJDBCドライバです。 5.org.git.mm.mysql.Driver は、「MM Mysql Drivers」と呼ばれ、1.とはまた別のチームが開発してきたJDBCドライバです。 普通は、というよりもほとんどの場合、"com.mysql.jdbc.Driver"を使用すれば何も問題ないと思います。

Guno-this
質問者

お礼

>4.com.mysql.jdbc.ReplicationDriver は、MySQLでレプリケーション構成(Master/Slave)しているときに使用するJDBCドライバです。 おそらく今、私の端末に入っている「MySQL」はレプリケーション構成(Master/Slave)されていないから接続エラーな訳ですね。 どうも、ありがとうございます。

関連するQ&A

  • EclipseのJDBCドライバーについて

    Eclipse3.1、MySQL、Tomcat、をインストールして、JDBCドライバーをインストールしました。(features、pluginsをEclipseのフォルダ内に上書き保存) また、Javaのファイル\jdk1.5.0_05\lib\extと、\jre1.5.0_05\lib\extの\両方に(本当はどちから一方でいいのですが、わからなかったので)mysql-connector-java-3.1.11のフォルダとmysql-connector-java-3.1.11-bin.jarをコピーしました。 MySQLにてテーブルを作成して、これをEclipseから呼び出そうとしました。DbEditに切り替えてtableタグの中に新しいデータベースの設定を行い、呼び出そうとしましたが、エラーが出ました。サーバーのURLである、jdbc:mysql://host/MySQLdataに接続できないといったメッセージです。 どこを確認したらよろしいかを経験者の方ご教授お願いします。 Eclipse3.1、MySQL、Tomcatは書籍の付録CDからですので、バージョンの整合性は合っています。 Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION **... dbedit.core.DataException: Couldn't connect to:jdbc:mysql://host/MySQLdata com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.net.UnknownHostException MESSAGE: host: host STACKTRACE: java.net.UnknownHostException: host: host at java.net.InetAddress.getAllByName0(Unknown Source) at java.net.InetAddress.getAllByName0(Unknown Source) at java.net.InetAddress.getAllByName(Unknown Source) at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:137) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:284) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2541) at com.mysql.jdbc.Connection.<init>(Connection.java:1474) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266) at dbedit.internal.core.JdbcManager.internalOpenConnection(JdbcManager.java:1751) at dbedit.internal.core.JdbcManager.openConnection(JdbcManager.java:804) at dbedit.internal.core.Dataspace.openConnection(Dataspace.java:217) at dbedit.internal.core.Database.connect(Database.java:61) at dbedit.ui.internal.ConfigureConnectionsAction$Opener.run(ConfigureConnectionsAction.java:185) ** END NESTED EXCEPTION ** Last packet sent to the server was 0 ms ago.

    • ベストアンサー
    • Java
  • EclipseでのJDBCドライバについて

    Eclipse3.1でデータベース(mysql)にアクセスするプログラムを作ったのですが下記のエラーが出ます。 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver これはJDBCドライバのセットアップがうまく出来ていないからなのでしょうか? またEclipseでは、~.jarというファイルをプロジェクトのWEB-INFのlibフォルダに入れれば使える印象があるのですが、参考書(EclipseのではなくJAVAなどの)などにあるようにTomcatのインストールフォルダ以下common/libに入れて環境変数を変更しないといけないのでしょうか? ご存知の方教えてください、よろしくお願いします。

    • ベストアンサー
    • Java
  • JDBCドライバについて

    JavaからアクセスしたいのでJDBCドライバをインストール、設定しようとしたのですが、Tomcatに組み込むやり方がわかりません。このサイトを参考にしてやったのですが・・・ << db105.java >> データベース(0):JDBCドライバ JavaのプログラムからMySQLのデータベースへ接続するにはJDBCドライバが必要である。 ●JDBCドライバのダウンロードとインストール (1)Webブラウザで、http://www.mysql.com/downloads/に接続する。 ダウンロードするバージョン(MySQL Connector/J 3.0)をクリックする。 (2)http://dev.mysql.com/downloads/connector/j/3.0.htmlに切り替わる。Downloadをクリックする。 (3)ダウンロードが始まるので、保存先をデスクトップにする。ファイル(mysql-connector-java-3.0.15-ga.zip)がデスクトップに保存される。 (4)ZIP形式のファイル(mysql-connector-java-3.0.15-ga.zip)を解凍する。デスクトップ上のディレクトリ(mysql-connector-java-3.0.15-ga\mysql-connector-java-3.0.15-ga)内のファイル(mysql-connector-java-3.0.15-ga-bin.jar)にJDBCドライバが存在する。 (5)JDBCドライバを環境変数CLASSPATHに追加する。 SET CLASSPATH=%CLASSPATH%;c:\mysql-connector-java-3.0.15-ga\mysql-connector-java-3.0.15-ga-bin.jar;. ただし、JDBCドライバは、 c:\mysql-connector-java-3.0.15-ga\mysql-connector-java-3.0.15-ga-bin.jarに存在する。 ●Tomcatに組み込む。 ファイル(mysql-connector-java-3.0.15-ga-bin.jar)を %CATALINA%\shared\libの下にコピーする。その後、再起動する。 2番目の黒丸の%CATALINA%\shared\libが全くみつからないです。教えてください~;;

    • ベストアンサー
    • MySQL
  • MySQLのJDBCドライバについて

    現在、MySQL3.2.3を使ってJSPの学習をしています。ドライバはmm.mysql-2.0.4-bin.jarを使用しています。 色々なホームページを調べると、 Class.forName(ドライバ名); のドライバ名が、org.gjt.mm.mysql.Driverとcom.mysql.jdbc.Driverの2つが紹介されているのですが 何が違うのでしょうか? ちなみに私の環境では前者の方だとうまくいくのですが後者だと javax.servlet.ServletException:com.mysql.jdbc.Driver のエラーになってしまいます。 MySQLのドライバによって違ってくるのでしょうか? 初歩的な質問で申し訳ございませんが教えてください。 その他環境: OS:Windows ME JDK1.4.0 Tomcat4.0 を使用しています。

    • ベストアンサー
    • Java
  • eclipseでのJDBCについて

    eclipseのMySQLJDBCの外部接続に関して全く分からず手詰まりしているので、ご教授願いたいと思います。 プロジェクトの配下のweb.xmlにMySQLの接続情報を入力しました。一応ソースです。 web.xmlに <context-param> <param-name>jdbcDriver</param-name> <param-value>com.mysql.jdbc.Driver</param-value> <description>JDBC Driver</description> </context-param> <context-param> <param-name>jdbcUri</param-name> <param-value>jdbc:mysql://localhost:3306/airticket?useUnicode=true&amp; characterEncoding=sjis</param-value> <description>MySQL URI</description> </context-param> <resource-ref> <res-ref-name>jdbc/MySQL_JDBC</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> を書いて、 会員登録をするクラスに、 try{ try{ //ドライバクラスをロード Class.forName("com.mysql.jdbc.Driver").newInstance(); } catch(Exception ex) { } //データベースへ接続 String url = "jdbc:mysql:///airticket?useUnicode=true&characterEncoding=SJIS"; Connection con = DriverManager.getConnection(url); //ステートメントオブジェクトを生成 Statement stmt=con.createStatement(); String sql="insert into member(member_id,member_pass,family_name,first_name,birth_year,birth_month,birth_day,address,post_code,mail,"+"sex,home_tel,job) values('"+ member_id +"',"+ mempasslong +",'"+ family_name +"','"+ first_name +"',"+ birth_year +","+ birth_month +","+ birth_day +",'"+ address +"',"+ post_code +",'"+ mail +"',"+sexint+","+ home_tel +",'"+ job +"');"; int result=stmt.executeUpdate(sql);       stmt.executeBatch(); // データベースから切断 stmt.close(); con.close(); } catch (Exception e) { message = "登録失敗しました。"; request.setAttribute("message", message); return mapping.findForward("registererror"); } message = "登録完了しました。"; request.setAttribute("message", message); return mapping.findForward("success"); } } って書いてクラスからweb.xmlを参照してデータベース接続したいんですが、エラーが出ずに困っています。そもそもクラスからweb.xmlの情報を参照するやりかたはあるのですか?教えてください

  • eclipseからDBへの接続

    java:1.6.0_1、mysql:5.1、eclipse:3.5、jdbc:mysql-connector-java-5.1.10-bin.jarです。 エラーが MYSQLエラーコード:0 エラーメッセージ:Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. SQLStateコード:08S01 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2214) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:781) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:352) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:284) at java.sql.DriverManager.getConnection(DriverManager.java:582) at java.sql.DriverManager.getConnection(DriverManager.java:185) at chap2.DBConnect.main(DBConnect.java:13) Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:343) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2137) ... 12 more Caused by: java.net.ConnectException: Connection refused: connect at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:525) at java.net.Socket.connect(Socket.java:475) at java.net.Socket.<init>(Socket.java:372) at java.net.Socket.<init>(Socket.java:215) at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292) ... 13 more 初心者でなにがだめか調べてもわかりません。 どなたかご指導おねがいします

  • Mysql5.5.22接続時のJDBCドライバ

    Mysql5.5.22にTomcat7を使用し接続を行っているのですが mysql-connector-java-5.5~.jar というようなJDBCドライバファイルが見つからずに mysql-connector-java-5.1.13-bin.jarを使用しているのですが問題ないでしょうか。 また、mysql-connector-java-5.5.22等は存在しないのでしょうか? よろしくお願いします。

    • ベストアンサー
    • MySQL
  • JavaBeanを用いてJDBCでのDBへの接続

    単体のJavaプログラム(Javaアプリケーション)からはDBにアクセスすることができるのですが、以下のような場合だとDB接続ができないようなのです。 JSPコンテナであるトムキャットを用い、JSPからBeanを呼んで、Beanの中でDBドライバーの登録とDBへの接続を行うプログラム DBドライバーの登録はうまくいっているようで、DBへ接続をするところでエラーがでるのです。 なぜなのでしょうか?DBはmySQLを使用して、当然コマンドプロンプトで開いています。

  • 日本語対応JDBCドライバ

    MySQLの日本語対応JDBCドライバは存在するのでしょうか? もし存在するのであれば、参照URLを教えてください。

  • JDBCドライバのインストール

    サーブレットからMySQLサーバにアクセスするために、MySQL用のJDBCドライバをインストールしようとして、 http://www.mysql.com/downloads/connector/j/から mysql-connector-java-5.0.4-bin JARファイルをダウンロード してきましたが、本には%CATALINA_HOME%/common/lib にコピーする ように書いてあるのですが、該当ディレクトリが存在しません。(古い本のせいでしょうか。)どこにコピーしたらよいのかわからず途方にくれています。どなたか教えてください。よろしくお願いします。

専門家に質問してみよう