2017-01-20 5 views
1

私はJavaアプリケーションを開発しました。これをdb4free.netがホストするオンラインMySQLデータベースに接続したいと考えています。しかし、私はJDBCを使って接続することはできません。私が使っているURLに何か問題があることを知っています。私は私のブラウザでご覧くださいURLは次のとおりです。Java apをオンラインMySQLデータベースに接続できません - 間違ったURL

public class ReadProperties { 
    private String db_user; 
    private String db_password; 
    private String db_connection; 
    private Connection connection; 

    public ReadProperties(String filename){ 
     Properties propfile = new Properties(); 
     InputStream input = null; 
     try { 
      input = new FileInputStream(filename); 
      propfile.load(input); 

      db_user = propfile.getProperty("db_user"); 
      db_password = propfile.getProperty("db_password"); 
      db_connection = propfile.getProperty("db_connection"); 

      connection = DriverManager.getConnection(db_connection, db_user, db_password); 
      System.out.println(connection); 

     } catch (IOException | SQLException ex) { 
      ex.printStackTrace(); 
     } 
     finally { 
      if (input != null) { 
       try { 
        input.close(); 
       } catch (IOException e) { 
        e.printStackTrace(); 
       } 
      } 
     } 
    } 
} 

そして、私のプロパティファイル:

db_user=USERNAME 
db_password=PASSWORD 
db_driver=com.mysql.jdbc.Driver 
db_connection=jdbc:mysql://db4free.net/DB_NAME 

何URLを正確にすべき

https://db4free.net/phpMyAdmin/index.php?db=DB_NAME&target=db_structure.php&token=8d68285c6950611a4f9630dc2c132b61 

これは私がプロパティを読み取る方法です私が使う?これは、(私はデータベースの名前を消去している)私はphpMyAdminの中で見たものである。

enter image description here

+0

データベースにpingを実行しましたか? –

+0

ドメインの名前を実際の@IP –

+0

@LAIDANIYoucefに変更することができますか?私はドメイン名をpingしました。IPは'85.10.205.173'です。 – Marievi

答えて

1
  • まず、IPアドレスと自分の データベースのポートを取得するためにすべき事は、このような罰金になります:

ping

  • MySQLがので、あなたのURLやdb_connectionは次のようになりますため、デフォルトではポートは3306です:

変更をあなたのURLがに:

db_connection=jdbc:mysql://85.10.205.173/DB_NAME 
  • 作るあなたはClass.forName(driver);
を呼び出してください

編集

私はすでにこのサイトでデータベースを作成し、私は簡単なプログラムを作成し、それは私と一緒に働く:

import java.sql.DriverManager; 
import java.sql.SQLException; 

public class CreerConnection { 

    static String driver = "com.mysql.jdbc.Driver"; 
    static String DB_username = "youcef"; 
    static String DB_password = "youcef"; 
    static String DB_URL = "jdbc:mysql://85.10.205.173/bd_test"; 

    public static void main(String[] args) { 
     try { 
      Class.forName(driver); 
      java.sql.Connection con = DriverManager.getConnection(DB_URL, DB_username, DB_password); 
      System.out.println("Success"); 
     } catch (ClassNotFoundException | SQLException e) { 
      System.out.println("Exception : " + e); 
     } 
    } 
} 

あなたは私のデータは、これはあなたを助けることを願って使用することができます。

+0

ドメインへのPINGが機能しません。 – Marievi

+0

なぜそれが私のために働くのですか?この@IPを使って試してみてください。既に私のPCに入っています。 –

+0

私はあなたが提案したものすべてを試しましたが、何もしませんでした:/ – Marievi

-2

データベースは、特定のポートで待機している、あなたはそれを指定する必要があり、それは3306でなければなりません(私はそれを見るようにあなたのスクリーンショットの一番下にあります)。

あなたのDB接続プロパティは次のようになります。そして、すべての

  • 第二のpingそれが作業する場合、データベース:すべての

    db_connection=jdbc:mysql://db4free.net:3306/DB_NAME 
    
  • +0

    'phpMyAdmin'とその他のリンクについてはどうですか? – Marievi

    +0

    デフォルトポート(3306)を指定する必要はありません。https://github.com/mysql/mysql-connector-j/blob/release/5.1/src/com/mysql/jdbc/ConnectionImpl.java#L2219を参照してください。 – rkosegi

    関連する問題