sql >> データベース >  >> RDS >> Mysql

OpenShift webappsmysqljava接続

    私は自分で問題を解決し、非常に興奮していました。私自身は助けを借りていませんでしたが、他の誰かがこのスレッドに参加して、それを機能させることができることを願っています!

    だから私は、WARファイルにコンパイルされたVaadinアプリケーションを持っています。次の手順でOpenShiftサーバーにデプロイしました:

    コンパイルされたWebアプリのOpenShiftへのデプロイ

    1. WebブラウザーでOpenShiftを開きます。 Openshiftにログインします。問題のアプリケーションに移動します。
    2. カートリッジの右側にある、そのアプリケーションのsshコード(画面の右側にある必要があります)を取得します。 Command-CまたはCtrl-Cを使用してそのコードをコピーします。
    3. ターミナルを開き、git clone ssh:\\xxxxxxxxxxxxxxxx...と入力します
    4. 私のようにMacを使用している場合は、Users/Username/Appnameにプロジェクトディレクトリを作成する必要があります。 。そのディレクトリ内で、ソースフォルダとpom.xmlを削除します 。コンパイルしたWARファイルを取得し、webappsにコピーします。 ディレクトリ。
    5. ターミナルに移動します。 cd Appnameと入力します 、次にgit add .git commit -m "Deployment" 、そして最後にgit push
    6. これで、アプリケーションはwww.openshiftappname-domainname.rhcloud.com/warfilenameで完全に機能するはずです。

    MySQLアクセス

    1. MySQLとphpMyAdminのカートリッジをインストールします。これは、Add Cartidgeから入手できるはずです。 openshift.comで アプリハブ。
    2. usernameをメモしてください およびpassword OpenShiftが自動的に生成するMySQLデータベースに。 www.openshiftappname-domainname.rhcloud.com/phpmyadminにアクセスします 、認証資格情報を入力します。
    3. phpMyAdmin内にサーバーのIPアドレスが必要です。 127.x.y.z:3306のように見えます 。 x, y, and z 1桁から3桁の数字にすることができます。
    4. 新しいdatabaseをすばやく作成する 好きな名前を付けます。 testという名前を付けます その結果、そこにtesttableという名前の新しいテーブルが作成されます 。
    5. では、デプロイされたWARアプリケーションを覚えていますか?さて、あなたがMySQLを使用しているなら、私はあなたがすでにそれをあなたのアプリケーションに含んでいるに違いない。 MySQLへの接続を確立するための基本的な手順はそれ自体です。

    Javaコード

    WARファイルにコンパイルしたオープンIDEプロジェクトに移動します。 Mavenプロジェクトの場合は、プロジェクト内のpom.xmlに移動し、依存関係を追加します。

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.25</version>
     </dependency>
    
    1. 次に、次のコードを使用します。

    String s = "jdbc:mysql://" + host + ":" + port + "/" + name" 、ここで、hostはserver IP addressです。 、ポートは3306です nameはdatabase nameです 、私の場合、test

    try {
        Class.forName("com.mysql.jdbc.Driver");
    } catch (ClassNotFoundException e) {
         e.printStackTrace();
    }
    
    try {
        Connection con = DriverManager.getConnection(s, username, password);
    }
    catch (SQLException e) {
        e.printStackTrace();
    }
    

    ここで、if (con == null) それは動かなかった。そしてそれがnullでない場合 、しました。

    テストするには、WARファイルを再コンパイルする必要があります(視覚的にテストする方法をいくつか置いた後)。さらにサポートが必要な場合は、コメントを残してください。 WARファイルをコンパイルして手順4-6をやり直すときに機能するはずです。 最初のセクション:Deployment of compiled webapp to OpenShift 。ありがとう!




    1. 前のドロップダウンonchangeイベントで次のドロップダウン値を変更する

    2. Postgresデータベースに画像ファイルを保存する方法は?

    3. 多数のmysqlの更新と挿入を高速化

    4. MySQL2つのフィールドでテーブルを結合する方法