###前提・実現したいこと
javaでMySQLに接続してデータ表示を行いたいです。
JDBCドライバはインストール済で、環境変数のユーザ環境変数にてクラスパスは設定済です。
変数名:CLASSPATH
変数値:.;c:¥memo¥lib¥mysql-connector-java-5.1.39-bin.jar
###発生している問題・エラーメッセージ
C:¥memo¥JDBC>javac -encoding UTF-8 JdbcTest.java ↓ C:¥memo¥JDBC>java JdbcTest エラー: メイン・クラスJdbcTestが見つからなかったかロードできませんでした
###該当のソースコード
import java.sql.*; //java.sqlパッケージのインポート// class JdbcTest{ public static void main(String[] args){ Connection conn = null; Statement stmt = null; ResultSet rs = null; //3つのオブジェクトを初期化// try{ Class.forName("com.mysql.jdbc.Driver"); /*クラスローダによりJDBCドライバを読み込んでいることを示している。 引数は、データベースにアクセスするためのJDBCドライバのクラス名である*/ String strConn = "jdbc:mysql://localhost/memo" +"?user = root&password = ky890703"; //コネクション文字列作成// conn = DriverManager.getConnection(strConn); //DriverManagerクラスのgetConnectionメソッドを使ってデータベースに接続する// stmt = conn.createStatement(); /*データベースの接続後に、sql文をデータベースに直接渡すのではなく、 sqlコンテナの役割を果たすオブジェクトに渡すためのStatementオブジェクトを作成する*/ String strSql = "SELECT * FROM USER"; //SQL文作成// rs = stmt.executeQuery(strSql); //問合せ文の実行// while(rs.next()){ int userId = rs.getInt("USER_ID"); String password = rs.getString("PASSWORD"); String userName = rs.getString("USER_NAME"); System.out.println(userId+":"+password+":"+userName); //getInt()&getString()メソッドは、引数に指定されたフィールド名(列)の値をint&Stringとして取得する// } }catch(Exception e){ e.printStackTrace(); //全ての例外をキャッチしている// }finally{ try{rs.close();}catch(SQLException e){e.printStackTrace();} try{stmt.close();}catch(SQLException e){e.printStackTrace();} try{conn.close();}catch(SQLException e){e.printStackTrace();} //データベースオブジェクトをクローズしている// } } }
###試したこと
・クラスパスに間違いがないか確認。また-cpを使ったクラスパス指定でもやってみましたが、エラー。
・javacにてコンパイルされたクラスファイルはカレントディレクトリ(C:¥memo¥JDBC)にあることの確認。
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
回答3件
あなたの回答
tips
プレビュー