Android端末から外部DB(MYSQL)接続

このQ&Aのポイント
  • Android端末からさくらインターネットのレンタルサーバーへ外部接続し、MYSQLからデータを取得する方法を教えてください。
  • さくらインターネットのサーバー内でPHPの処理でMYSQLからデータを取得してHTMLに表示する仕組みがあるのですが、それをAndroid端末から実行してデータを表示する方法を教えてください。
  • Android SDKでエミュレータ上で動作させています。実機ではなくエミュレータ上で動作させる方法を教えてください。
回答を見る
  • ベストアンサー

Android端末から外部DB(MYSQL)接続

アンドロイド端末よりさくらインターネットのレンタルサーバーへ外部接続し、MYSQLからデータを取得してアンドロイド端末で取得データを表示させたいのですが、参考となる書籍やサイトがあったら教えて下さい。 現在、さくらインターネットではスタンダードプランでサーバーを借りていまして、サーバー内でphpの処理でMYSQLからデータを取得してHTMLで表示する仕組みができているので、アンドロイド端末からこのPHPの処理を動かして取得したデータをアンドロイド端末で表示すればよいと考えているのですが、サイトや書籍を調べてもできません。 ※Android sdkは、Eclipse上で動作させており、エミュレータで実行しています。 参考にしたページは、次のようなものです。 http://blog.kabel.jp/?cid=20 →このページの「Android から外部SQLへアクセス」の部分の通りに設定しました。 http://archi.iza.ne.jp/blog/entry/691670/ →このページをベースに添付(名前はJdbcSample.javaのソースを作り、eclipse上で実行しました。 http://www.atmarkit.co.jp/fjava/javatips/069java006.html http://okwave.jp/qa/q5527506.html エミュレータで「hello world!」は表示できたので、基本的な環境の設定はできてると思っています。 実機で実現できれば一番よいのですが、まずはエミュレータで実現できればと考えています。 ヒントだけでもよいので、どうか私にご教授下さい。 以下は、実行したソースです。 import java.sql.Statement; public class JdbcSample { public static void main(String[] args) { Connection con = null; Statement stmt = null; ResultSet rset = null; try { Class.forName("com.mysql.jdbc.Driver"); con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase","root", "root"); →ここのlocalhostは10.0.2.2も試しましたが、ダメでした。 →ここのlocalhostと書かれた右側は3306以外は試していません。 →ここのmydatabaseは、mysql○○○.db.sakura.ne.jpを指定しました。 →ここの左側のrootはデータベース名を指定しました。 →右側のrootはデータベースのパスワードを指定しました。 stmt = con.createStatement(); rset = stmt.executeQuery("SELECT * FROM customerlist"); →ここは実在するテーブル名を指定しました。 while ( rset.next() ) { System.out.print(rset.getInt("id")); →このidや下記のnameやcompanynameは上記テーブル内の列名を指定しました。 System.out.print(","); System.out.print(rset.getString("name")); System.out.print(","); System.out.println(rset.getString("companyname")); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { try { rset.close(); stmt.close(); con.close(); } catch ( SQLException e ){ e.printStackTrace(); } } } }

  • Java
  • 回答数3
  • ありがとう数6

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

  • ベストアンサー
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 ("jdbc:mysql://localhost:3306/mydatabase","root", "root"); ここの内容は jdbc:mysql://接続先:3306/データベース名", "ユーザ","パスワード" ですので指定の仕方が間違っています。 ただし、さくらサービスのDBが外部からの接続を許可していなければ、接続できないはずです。 その場合は先に質問者様が仰っている通り、さくらサーバに設置してあるPHP等を介して取得することになると思います。 (XMLで返したりJSONで返したり)

yanagihk
質問者

お礼

データベース名とは、mysql○○○.db.sakura.ne.jpのような指定でなく、自分で付けたデータベースの名前でしょうか? また、さくらが外部接続を受け付けていると仮定すると、接続先はmysql○○○.db.sakura.ne.jpのIPアドレスを指定すればよいのでしょうか? かなり重要なアドバイスと思っています。XMLやJSONについて調べてみます。 お忙しい中、ありがとうございます。

その他の回答 (2)

noname#147388
noname#147388
回答No.3

SSH ポート転送 ぼそっ さくらインターネットは外部からDB接続は拒否してます。

yanagihk
質問者

お礼

外部からのDB接続ができないとなるとかなり残念です。 年末の忙しい中、ご回答ありがとうございます。

回答No.2

この手のレンタルサーバは外部からDBに対しての接続ポートも開けてないし ユーザのアクセスできる制限でほとんどがlocalhost指定だったりして外部からそもそも 接続できないようになっていると思うけどね。 どうしてもやりたいなら簡単な方法としてはAbdroid端末からWebサーバに対して httpでリクエストしてWebサーバ側でPHPやPerlでxmlなりのデータをサーバ側で生成して それを送り返す形にするしかないでしょうね。

yanagihk
質問者

お礼

そういうことですか。 XML等のデータをサーバーで生成するあたりは初めて知ることなので、 調べるキーワードができて嬉しいです。 外部からDBに接続できるレンタルサーバーはどこで見分けたらよいのですか? 貴重なアドバイスをいただき、ありがとうございました。

関連するQ&A

  • mysqlへの接続が出来ません

    まずは、サンプルプログラミングをコピーして実行してみましたが、上手くいきません。 package Connection; import java.sql.*; public class DBtest { public static void main(String[] args) { //java.sql Connection con = null; Statement stmt = null; ResultSet rs = null; String sqlStr; try { //ドライバクラスをロードする Class.forName("org.gjt.mm.mysql.Driver"); //MySQLに接続 con = DriverManager.getConnection("jdbc:mysql://localhost/dbname", "8080", "password"); //ステートメント生成 stmt = con.createStatement(); //SQL文 sqlStr = "SELECT * FROM TABLE"; //SQL文実行 rs = stmt.executeQuery(sqlStr); //検索結果数だけループ while(rs.next()){ //レコードの値 int id = rs.getInt("ID"); String name = rs.getString("NAME"); //表示 System.out.println(id + ":" + name); } //クローズ rs.close(); stmt.close(); con.close(); } catch (Exception ex) { try { //クローズ if (rs != null) rs.close(); if (stmt != null) stmt.close(); if (con != null) con.close(); } catch (Exception e) { } //エラー ex.printStackTrace(); } } } 上記はEclipseでは文法エラーはありません。で実行してみると java.sql.SQLException: Access denied for user '8080'@'localhost' (using password: YES)になります。 サンプルにはDbname、ID,Passとあるので実際のDbnameとパスワードを入れているのですが駄目です。 IDは意味が良くわからないので8080を入れてみました。 どなたか教えて下さい。お願いします。 尚、当方全くの初心者です宜しくお願い致します。

    • ベストアンサー
    • Java
  • javaでGUIのDB(MYSQL)登録時文字化け

    JDK 1.6.0 MySQL 5.1 NetBeansのIDEツールを使用してSWINGのGUIアプリを勉強がてら作成しています。 JDBC接続でMYSQLにINSERTまではなんとかできましたが日本語を登録しようとすると文字化けが発生してしまいます。 登録結果:100006 ???????? ???? 0359210188 ???????????????????? この文字化けはJAVA、MYSQLのどちらで直すべきものでしょうか。 ちなみにMYSQLのMY.INIの下記の設定を変更してみましたがダメでした。 default-character-set=latin1⇒default-character-set=utf8 下記が登録時のソースです。よろしくお願いいたします。 private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: try{ String sSql = ""; // 1.JDBC Driver の登録 Class.forName("com.mysql.jdbc.Driver").newInstance(); // 2.データベースへの接続 Connection con = DriverManager.getConnection( "jdbc:mysql://localhost:3306/MyNewDatabase", "root", "umemoto"); // 3.SQL ステートメント・オブジェクトの作成 Statement stmt = con.createStatement(); // sSql += "INSERT INTO M_KAIIN ("; sSql += "NK_KAIIN"; sSql += ",NM_KAIIN"; sSql += ",NK_TEL"; sSql += ",NM_ADD"; sSql += ") VALUES ("; sSql += "'" + jTextField1.getText() + "'" ; sSql += ",'" + jTextField2.getText() + "'" ; sSql += ",'" + jTextField3.getText() + "'" ; sSql += ",'" + jTextField4.getText() + "'" ; sSql += ");" ; //実行 stmt.execute(sSql); // 6.データベースのクローズ stmt.close(); con.close(); } catch (SQLException e1) { System.out.println( "SQLException: " + e1.getMessage()); System.out.println( " SQLState: " + e1.getSQLState()); System.out.println( " VendorError: " + e1.getErrorCode()); } catch (Exception e2) { System.out.println( "Exception: " + e2.getMessage()); } }

  • javaからmysqlに接続ができません。

    よろしくお願いします。 JavaからMySqlに接続ができなくて困っています。 <環境> OS:Windows XP JDK : jdk1.6.0_02 JDBC Driver for MySQL : mysql-connector-java-5.1.5-bin.jar Java、MySql単体では正常に動作しているようですが、ドライバを認識できず、JavaからMySqlに接続することができません。 ---コード------------------------------------------ import java.net.*; import java.sql.*; public class SqlSample1{ String url = "jdbc:mysql://localhost/test_db"; String user = "root";//ユーザ名 String pass = "admin";//パスワード Connection con = null; //コンストラクタ public SqlSample1(){ init();//初期化 fin();//終了 } //初期化 public void init(){ try{ //ドライバのロード Class.forName("org.gjt.mm.mysql.Driver"); //MySQLサーバへの接続 con = DriverManager.getConnection(url,user,pass); System.out.println("Connected!!"); }catch(SQLException e){ System.err.println("SqlException:\n"+e.toString()); }catch(Exception e){ e.printStackTrace(); } } //終了:開放 public void fin(){ try{ con.close(); System.out.println("Closed."); }catch(SQLException e){ System.err.println("SqlException:\n"+e.toString()); }catch(Exception e){ e.printStackTrace(); } } public static void main(String args[]){ SqlSample1 ss1=new SqlSample1(); } } ----------------------------------------------------------- ----エラーメッセージ--------------------------------------- SqlException: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure Last packet sent to the server was 0 ms ago. java.lang.NullPointerException at SqlSample1.fin(SqlSample1.java:41) at SqlSample1.<init>(SqlSample1.java:18) at SqlSample1.main(SqlSample1.java:53) ------------------------------------------------------------ ※C:\mysql-connector-java-5.1.5の下のmysql-connector-java-5.1.5-bin.jarファイルにCLASSPATHを設定しています。 初心者のためへたくそな質問になっているかもしれません。 申し訳ありません。 上記の情報が不十分な場合はご指摘をお願い致します。

  • JSPからMYSQLへの接続について

    はじめまして 初めて質問をさせていただきます。 qazxsw1と申します。 タイトルの通り、JSPからMYSQLに接続するプログラムなのですが、下記のようなエラーが出て、その後試行錯誤しましたがやはりうまくいきません。 java.sql.SQLException: Access denied for user 'mysql'@'localhost' (using password: YES) 参考にさせていただいたサイトは以下の通りです。 http://www.hellohiro.com/jspdb.htm mysql-connector-java-○.○-bin.jarファイルは[Tomcatのフォルダ]\shared\libにあります。 バージョンはTomcat4.1、MySQL Server4.1です。 ソースコードは以下の通りです。 データベース名、ユーザ名、パスワードは伏せてあります。 お手数ですが、詳しい方がいらっしゃいましたらよろしくお願いします。  <%@ page contentType="text/html; charset=Shift_JIS" %> <%@ page import="java.sql.*" %> <% Connection con = null; Statement stmt = null; try { // ドライバクラスをロード Class.forName("org.gjt.mm.mysql.Driver"); // データベースへ接続 String url = "jdbc:mysql:///データベース名?useUnicode=true&characterEncoding=SJIS"; con = DriverManager.getConnection(url, "ユーザ名", "パスワード"); // ステートメントオブジェクトを生成 stmt = con.createStatement(); // 全ての行を検索するSQL文を作成 String sql = "SELECT * FROM kaiin_tbl"; // クエリーを実行して結果セットを取得 ResultSet rs = stmt.executeQuery(sql); %> <html> <head> <title>JSPでDB接続</title> </head> <body> <table border="1"> <tr> <th>NO</th> <th>言語</th> <th>メッセージ</th> </tr> <% // 検索された行数分ループ while(rs.next()){ %> <tr> <td><%=rs.getInt("NO") %></td> <td><%=rs.getString("LANGUAGE") %></td> <td><%=rs.getString("MESSAGE") %></td> </tr> <% } // end while %> </table> </body> </html> <% } catch (Exception e) { out.println("<font color=red><h3>エラー!</h3></font>" + e); e.printStackTrace(); } finally { // データベースへの接続をクローズします try { if (stmt!=null) { stmt.close(); } if (con!=null) { con.close(); } } catch (Exception e) { e.printStackTrace(); } } %>

  • データベースへ接続

    JAVAを使ってMySQLへ接続して、テーブルにデータを挿入するプログラムを作ったのですが、エラーが出てしまいます。 環境変数は CLASSPATHは .;%JAVA_HOME%\lib\tools.jar;C:\mysql-connector-java-3.0.16-ga\mysql-connector-java-3.0.16-ga\mysql-connector-java-3.0.16-ga-bin.jar;. PATHは %JAVA_HOME%\bin;C:\Program Files\MySQL\MySQL Server 4.1\bin JAVA_HOMEは C:\Program Files\Java\jdk1.5.0_11 です。 プログラム内容は // InsertSample.java import java.sql.*; class InsertSample { public static void main(String args[]){ Connection con = null; Statement stmt = null; // 引数のチェック if(args.length != 6){ System.out.println("usage : java InsertSample<id> <name> <yomi> <yubin> <address> <tel>"); return; } try { // JDBCドライバの登録 String driver = "org.gjt.mm.mysql.Driver"; // データベースの指定 String url = "jdbc:mysql://localhost/sampledb?useUnicode=true&characterEncoding=Shift_JIS"; String user = "root"; // 環境に応じて設定 String password = ""; // 環境に応じて設定 Class.forName (driver); // データベースとの接続 con = DriverManager.getConnection(url, user, password); stmt = con.createStatement(); // SQL文の作成 String sql = "INSERT INTO members VALUES('" + args[0] + "','" + args[1] + "','" + args[2] + "','" + args[3] + "','" + args[4] + "','" + args[5] + "'" + ")"; // 更新の実行 int num = stmt.executeUpdate(sql); System.out.println(args[0] + "の" + num + "行を追加"); } catch (SQLException ex) { System.err.println("SQL failed."); ex.printStackTrace (); } catch (Exception ex) { ex.printStackTrace (); } finally { try{ // データベースのクローズ stmt.close(); con.close(); } catch (Exception ex) { ex.printStackTrace (); } } } } で、エラーの内容は java.sql.SQLEception : Invalid authorization specification massage from server : "Access denied for user 'root'@'localhost' (using password : NO)" とでてしまいます。どのように改善したらよいでしょうか? よろしくお願いします。

    • ベストアンサー
    • Java
  • java servletからMySQLに情報を登録したいのです。

    ホームページのフォームに名前と番号の二つの列があってname[1],bango[1]...のようになっています。 それを番号があるものだけをMySQLに登録したいのですがうまくいきません。 以下に試しに作ったservletを書きます。 import java.io.*; import java.sql.*; import javax.servlet.*; import javax.servlet.http.*; public class program2 extends HttpServlet{ private static final String CONTENT_TYPE = "text/html; charset=Shift_JIS"; //private static final String CONTENT_TYPE = "text/html; charset=EUC_JP"; //private static final String CONTENT_TYPE = "text/html; charset=UTF-8"; private String server; private String db; private String user; private String pass; private String url; private Connection con = null; //グローバル変数の初期化 public void init() throws ServletException{ /*変数の初期化*/ server = "localhost"; //MySQLサーバ名またはIPアドレス db = "database"; //データベース名 user = "root"; //MySQLユーザ名 pass = "data"; //MySQLパスワード /* 必要であればオプションの指定 */ url = "jdbc:mysql://" + server + ":3306/" + db + "?useUnicode=true&characterEncoding=Shift_JIS"; //JDBC URL Shift_JIS /*DB初期処理*/ try{ /* JDBCドライバのロード */ Class.forName("com.mysql.jdbc.Driver").newInstance(); /* MySQLサーバ接続 */ con = DriverManager.getConnection(url, user, pass); } catch (SQLException e){ e.printStackTrace(); } catch (Exception e){ e.printStackTrace(); } } /*HTTP Get リクエストの処理*/ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ //エンコード request.setCharacterEncoding("Shift_JIS"); //FORMからの第一次受け渡し String name = "naoki"; String jikoku = "1200"; //for文の始まり for(int i = 1; name != null; i++){ //if文の始まり if(jikoku != null){ //FORMからの第一次受け渡し name = request.getParameter("name["+ i +"]"); jikoku = request.getParameter("jikoku["+ i +"]"); response.setContentType(CONTENT_TYPE); PrintWriter out = response.getWriter(); Statement stmt = null; ResultSet rs = null; try{ /* 検索するSQL文を作成 */ String sql = "INSERT INTO table1 (eki,jikoku) VALUES ('"+name+"','"+jikoku+"') "; /* Statementオブジェクトの生成とクエリの実行 */ stmt = con.createStatement(); stmt.executeUpdate(sql); /* 切断 */ stmt.close(); } catch (SQLException e){ out.println("<h3>登録に失敗しました</h3>"); e.printStackTrace(); } catch (Exception e){ e.printStackTrace(); } finally{ /* finallyを使って資源の解放 */ try{ if (stmt != null){ stmt.close(); stmt = null; } } catch (Exception e){ e.printStackTrace(); } } }//if文の終了 }//for文終了 } /*サーブレットインスタンスが破棄されるときに、サーブレットコンテナに最後に1度呼び出される*/ public void destroy(){ /* 切断 */ try{ if (con != null){ con.close(); con = null; } } catch (Exception e){ e.printStackTrace(); } } }

    • ベストアンサー
    • Java
  • JAVAからMYSQL使用時のキャッシュ無効化方法

    以下のようにJAVAからMYSQLを使っています。 しかし、30秒おきに使用しているSQL文の結果がDBを更新してもかわりません。 おそらく、javaまたはMYSQLでキャッシュが残っているためだと思うのですが、その無効化方法がわかりません。 その無効化方法のご教授をお願い申し上げます。 //MYSQLの各種設定 public onlineCycleChkDao() { // JDBCドライバの指定 this.driver = "com.mysql.jdbc.Driver"; // データベースの指定 this.server = "xxxx"; // MySQLサーバ ( IP または ホスト名 ) this.dbname = "xx"; // データベース名 this.url = "jdbc:mysql://" + server + "/" + dbname + "?useUnicode=true&characterEncoding=UTF8"; this.user = "xxxxxx"; // データベース作成ユーザ名 this.password = "xxxxxx"; // データベース作成ユーザパスワード DBcon(); try{ stmt = con.createStatement(); } catch(SQLException e){ System.err.println("SQL failed."); e.printStackTrace(); System.exit(2); } } private void DBcon(){ try{ // JDBCドライバの登録 Class.forName(this.getDriver()); // データベースとの接続 con = DriverManager.getConnection(getUrl(), getUser(), getPassword()); con.setAutoCommit(false); } catch(SQLException e){ System.err.println("SQL failed."); e.printStackTrace(); System.exit(2); } catch(ClassNotFoundException ex){ ex.printStackTrace(); System.exit(2); } } public void closeConnection(){ // コネクション切断 try{ con.close(); } catch(SQLException e) { System.out.println("MySQL Close error."); } } //サイクルSQL private long selectMaxSeqNo(String table){ long maxSeqNo = -1; try{ ResultSet rs; String sql; sql = "SELECT SQL_NO_CACHE SEQ_NO, NOW() FROM " + table ; //ここの取得結果が更新されません。対象テーブルは他のプログラムにて更新 sql += " ORDER BY RGST_TIME DESC limit 1;"; rs = stmt.executeQuery(sql); System.out.println(sql); while(rs.next()){ maxSeqNo = rs.getInt("SEQ_NO"); } rs.close(); } catch(SQLException e){ System.err.println("SQL failed."); e.printStackTrace(); System.exit(2); } System.out.println("seqNo:" + maxSeqNo); return(maxSeqNo); } public ArrayList<Long> selectMaxSeqNoList(){ //対象テーブルから最新のシーケンスNoリストを取得する。 ArrayList<Long> seqNoList = new ArrayList<Long>(); for(String Table : TableList){ //最新のシーケンスNo取得 long recentSeqNo = selectMaxSeqNo(Table); seqNoList.add(recentSeqNo); } return(seqNoList); }

    • ベストアンサー
    • Java
  • FC4でmysqlを使用して PEAR DB への接続ができない

    FC4に、yumでPHP5.0.4、php-pear-5.0.4、php-mysql-5.0.4、(mysql-4.1.20,mysql-server-4.1.20)をインストールしました。 <?php $con = mysql_connect("localhost","taro","password") or die("接続出来ません"); print "接続しました"; mysql_close($con); ?> を実行すると、「接続しました」と出ます。ところが、 <HTML> <HEAD><TITLE>PHP test</TITLE></HEAD> <BODY> <?php require_once("DB.php"); $dbUser="taro"; $dbPass="password"; $dbHost="localhost"; $dbName="testdb"; $dbType="mysql"; $dsn="$dbType://$dbUser:$dbPass:@$dbHost/$dbName"; $conn = DB::connect($dsn); if(DB::isError($conn)){ die($conn->getMessage()); } print ('DBに接続しました'); $conn->disconnect(); ?> </BODY></HTML> を実行すると、DB Error: connect failed と出て、接続できません。 php.iniは、 include_path = ".:/usr/share/pear:/php/includes" としてあり、 [root@FC4 ~]# ls -l /usr/share/pear/ で調べても drwxr-xr-x 2 root root 4096 5月 27 18:06 DB -rw-r--r-- 1 root root 38937 11月 8 2005 DB.php となっています。 パスの切り方が間違っているでしょうか? どのようにすれば接続できるでしょうか?よろしくお願い致します。

    • ベストアンサー
    • MySQL
  • PHPでMYSQLに接続できません

    PHP(4.3.11)でMYSQL(5.0.81)に接続しようとすると接続できず、 Client does not support authentication protocol requested by server; consider upgrading MySQL client というエラーになります。 PHP文はこのように記述しています。 <?php $con = mysql_connect("localhost","root","password"); if (!$con) { print(mysql_error()); exit('データベースに接続できませんでした。'); } ?> my.cnf に old_passwords=1 を記述し、mysqlを再起動したのですが同じエラーでした。 他に設定しなければならない事があるのでしょうか?

  • コネクションプールについて

    コネクションプール有とコネクションプール無でDB接続・切断を繰り返したときに どれくらい差があるか試してみようと思いWebアプリ上(フレームワークにStruts2を使用)で 下記コードを実行してみました。 dbcpConnectメソッド(コネクションプール有) と jdbcConnectメソッド(コネクションプール無) をそれぞれ千回づつループで回して実行してみました。 結果は 【コネクションプール有】実行にかかった時間:157384 ミリ秒 【コネクションプール無】実行にかかった時間:158760 ミリ秒 で大差はありませんでした。 コネクションプールを使用するともう少し早いと思っていたのですがそのようなことはないのでしょうか。 public String test4() { // コネクションプール有の接続 long start = System.currentTimeMillis(); for(int i=0; i< 1000; i++) { dbcpConnect(); } long stop = System.currentTimeMillis(); System.out.println("実行にかかった時間は " + (stop - start) + " ミリ秒です。"); // コネクションプール無の接続 start = System.currentTimeMillis(); for(int i=0; i< 1000; i++) { jdbcConnect(); } stop = System.currentTimeMillis(); System.out.println("実行にかかった時間は " + (stop - start) + " ミリ秒です。"); return "jstl4"; } public void dbcpConnect() { Connection con = null; try{ Context context = new InitialContext(); //DataSource ds = (DataSource)context.lookup("java:comp/env/jdbc/library"); DataSource ds = (DataSource)context.lookup("java:/comp/env/jdbc/dhcpTest"); con = ds.getConnection(); Statement stmt = con.createStatement(); String sql = "SELECT * FROM test.test"; ResultSet rs = stmt.executeQuery(sql); } catch(Exception e) { System.out.println("Error"); } finally { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } public void jdbcConnect() { Connection con = null; try{ con = DriverManager.getConnection("jdbc:mysql://localhost", "root", "root"); Statement stmt = con.createStatement(); String sql = "SELECT * FROM test.test"; ResultSet rs = stmt.executeQuery(sql); } catch(Exception e) { System.out.println("Error"); } finally { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } }

    • ベストアンサー
    • Java

専門家に質問してみよう