2

sourceforge でホストされている MySQL データベースがあり、接続 URL は次のとおりです。

https://mysql-t.sourceforge.net:3306/"db_name"

JDBC を使用してこのデータベースに接続したいと考えています。私の接続URLは次のとおりです。

jdbc:mysql://https://mysql-t.sourceforge.net:3306

ただし、次のエラーが発生し続けます

java.sql.SQLException: Must specify port after ':' in connection string

この理由は、部品が記号のhttps://後にポートを期待し続けるためだと思います。:https://<port#>

おそらくgetInetAddress()、IP を取得して使用するために使用できますが、それは正しくない可能性があるため、より良い解決策が必要です。

4

2 に答える 2

4

URL に http または https を含めないでください。このようにしてみてください:

jdbc:mysql://mysql-t.sourceforge.net:3306/db_name

ポート 3306 はインターネット上のクライアントから見えないため、http または https を含める必要があると考えているかもしれません。そうではないことを嬉しく思います。自分に見える場合は、他の人にも見えます。

クライアントとデータベースの間に仲介サーブレットが必要です。クライアントは、http ポート 80 または https ポート 443 を介してサーブレットに接続できます。サーブレットは、クライアントを認証および承認し、パラメーターを検証およびバインドし、クライアントに代わってデータベースに要求を行い、適切な応答を送信します。

ルートまたは管理者の資格情報を使用してそのデータベースにアクセスできるようにするべきではありません。そのアプリ専用の資格情報を作成し、1 つのデータベースにのみアクセスして、ジョブの実行に必要な操作のみを許可する必要があります。

于 2013-11-11T00:35:34.210 に答える