[解決済み] プール使用時の「jdbc:mysql://localhost/dbnameに適したドライバが見つかりません」エラーの修正方法とは?重複
2022-12-09 20:17:58
質問
データベースへの接続を作成しようとしていますが、mainメソッドを使用してコードをテストすると、シームレスに動作します。しかし、Tomcat 7を介してそれにアクセスしようとすると、エラーで失敗します。
No suitable driver found for jdbc:mysql://localhost/dbname.
私はプーリングを使っています。私は、WEB-INF/libと.classpathにmysql connector (5.1.15), dbcp (1.4) , and pool(1.4.5) librariesを入れました。私は、Eclipse IDEを使用しています。データベースドライバのための私のコードは次のとおりです。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import org.apache.tomcat.dbcp.dbcp.ConnectionFactory;
import org.apache.tomcat.dbcp.dbcp.DriverManagerConnectionFactory;
import org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory;
import org.apache.tomcat.dbcp.dbcp.PoolingDriver;
import org.apache.tomcat.dbcp.pool.impl.GenericObjectPool;
public class DatabaseConnector {
public static String DB_URI = "jdbc:mysql://localhost/dbname";
public static String DB_USER = "test";
public static String DB_PASS = "password";
// Singleton instance
protected static DatabaseConnector _instance;
protected String _uri;
protected String _username;
protected String _password;
/**
* Singleton, so no public constructor
*/
protected DatabaseConnector(String uri, String username, String password) {
_uri = uri;
_username = username;
_password = password;
GenericObjectPool connectionPool = new GenericObjectPool(null);
ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(
_uri, _username, _password);
PoolableConnectionFactory poolableConnectionFactory =
new PoolableConnectionFactory(connectionFactory, connectionPool,
null, null, false, true);
PoolingDriver driver = new PoolingDriver();
driver.registerPool("test", connectionPool);
}
/**
* Returns the singleton instance
*/
public static DatabaseConnector getInstance() {
if (_instance == null) {
_instance = new DatabaseConnector(DB_URI, DB_USER, DB_PASS);
}
return _instance;
}
/**
* Returns a connection to the database
*/
public Connection getConnection() {
Connection con = null;
try {
con = DriverManager.getConnection("jdbc:apache:commons:dbcp:test");
} catch (SQLException e) {
throw new RuntimeException(e);
}
return con;
}
}
スタックトレースの始まりです。
Apr 5, 2011 9:49:14 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [Login] in context with path [/Project]
threw exception
java.lang.RuntimeException: java.sql.SQLException:
No suitable driver found for jdbc:mysql://localhost/dbname
このエラーの原因は何ですか?
どのように解決するのですか?
サーバのlibフォルダにドライバjarを配置してみてください。($CATALINA_HOME/lib)
アプリケーションをインスタンス化する前にも、コネクションプールを設定する必要があると思います。(少なくともJbossではそのように動作します)
関連
-
MySQLのLike演算子に関する詳細
-
MySQL サービスとデータベース管理
-
mysqlのデータ圧縮性能比較 詳細
-
Djangoマイグレーションエラー 外部キー制約を追加できない
-
mysql がエラーを報告します。不明な文字セットです。'utf8mb4'
-
[解決済み] MySQLでコマンドラインを使用してユーザーアカウントのリストを取得するにはどうすればよいですか?
-
[解決済み] ブーリアン値を格納するために使用するMySQLデータ型
-
[解決済み] MySQLで複数のカラムに一意制約を指定するには?
-
[解決済み] エラー 1698 (28000)。ユーザー 'root'@'localhost' のアクセスが拒否されました。
-
[解決済み] MySQL ERROR 1045 (28000)。ユーザー 'bill'@'localhost' (使用パスワード: YES)のアクセスが拒否されました。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
MySQLデータベース・インデックスの左端一致の原則
-
MySQLインストールチュートリアル(Windows用)詳細
-
MySQLインストールチュートリアル(Linux版
-
MySQLデータベースで数百万件のデータを10秒間で挿入
-
[解決済み] ユニークなテーブル/エイリアスではない
-
SQLステートメントエラーです。オペランドには 1 つのカラムを含める必要があります [括弧を追加せずに複数のフィールドをクエリする
-
'INSERT文はFOREIGN KEY制約「FK_TourismReservation_Users」と競合していました。その
-
[解決済み] jdbc:mysql://localhost:3306/mysql [duplicate] に適したドライバは見つかりませんでした。
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] MySQLの複数行を1つのフィールドに連結することはできますか?