ホームページ >データベース >mysql チュートリアル >Android アプリはリモート MySQL データベースに JDBC を使用する必要がありますか?
Android での JDBC およびリモート MySQL 接続
Android アプリケーションで JDBC API を使用してリモート MySQL データベースに接続することは理論的には可能です。ただし、セキュリティとパフォーマンスの問題のため、このアプローチは強く推奨されません。
セキュリティ リスク
Android アプリケーションは逆コンパイルの影響を受けやすく、ログイン資格情報が悪意のあるユーザーに公開されます。これらの認証情報は、データベースを侵害し、不正なアクションを実行するために悪用される可能性があります。
パフォーマンスに関する考慮事項
ネットワーク経由で物理データベース接続を開くのは、特に次の場合に時間がかかります。接続は離れた場所から始まります。この問題は、グローバルに分散されたクライアントにとって重大であり、パフォーマンスに悪影響を及ぼします。
WebService ベースのソリューション
より安全で効率的な代替手段は、サービス指向アーキテクチャを採用することです。これには、Android アプリとリモート データベースの間の仲介として機能する Web サービス (できれば RESTful) の作成が含まれます。
Web サービス (通常は Java アプリケーション) は、プレーンな古い Java オブジェクト (POJO) と一緒に開発できます。 ) JDBC 機能をカプセル化します。この設計により、資格情報が保護され、データベース アクセスがユーザーの操作から分離されます。
サンプル コード
Jersey、Jackson、および JDBC を使用した ProductRestService クラスの例を次に示します。
@Path("/product") public class ProductRestService { @GET @Path("/list") @Produces(MediaType.APPLICATION_JSON) public List<Product> getProducts() { List<Product> productList = new ArrayList<>(); Connection con = ...; // Establish database connection // JDBC code to retrieve product data omitted for brevity return productList; } }
注: アプリケーションは以下に従う必要があります。このサービス指向の設計パターンにより、セキュリティと最適なパフォーマンスが保証されます。 PHP、Python、またはその他の言語を使用して Web サービスを作成することもできますが、Java の例と同様の機能を提供する必要があります。
以上がAndroid アプリはリモート MySQL データベースに JDBC を使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。