一方では、データベースにフィードし続けるJavaプログラムがあります。もう一方のWebサーバー(Apache)。プログラムからRESTWebサービスを介して離れたWebサーバーに複数のエントリを一度に転送する必要があります。値のペアを一方から他方に送信するのに問題はありませんが(Java側でHttpClientを使用し、反対側でサーバー自体のデータベースに書き込むPHPファイルを使用して)、HTTPを構築する方法についての知識が不足しています。データを使用してリクエストします。
私はこれまでエンティティを使用してきました:
List<NameValuePair> list = new ArrayList<NameValuePair>();
list.add(new BasicNameValuePair("field1", "aaa"));
list.add(new BasicNameValuePair("field2", "bbb"));
httppost.setEntity(new UrlEncodedFormEntity(list));
そして私のPHPファイルでそれを受け取ります:
<?php
$field1=$_POST["field1"];
$field2=$_POST["field2"];
$con= mysql_connect("localhost","root");
if(!$con) die("Not able to connect");
mysql_select_db("mydb",$con);
mysql_query("INSERT INTO `mytable` (`field1`, `field2`) VALUES ('$field1', '$field2')");
mysql_close($con);
?>
よく働く。シンプルで簡単。しかし今、前に述べたように、データベースからいくつかのエントリを転送したいと思います。各エントリは35のフィールドで構成されており、ビッグデータが生成されます。
私の質問は:データベースエントリをONE内に挿入し(または1つのHTTPリクエスト容量がいっぱいの場合は必要な数だけ)、PHPファイル側で結果のデータをフェッチするにはどうすればよいですか?ボーナス:以前のソリューションでは、どうすればそのデータを圧縮できますか?