3

Java で Yahoo Query Language を実装するにはどうすればよいですか? それとも、これは一般的に可能ですか?その後、JSONを解析したいと思います。

4

1 に答える 1

5

YQL はサーバー側で解釈されるため、Java で行うことはあまりありません。URL を作成して開き、データ ストリームを読み取るだけです。PHP のサンプル コードをコピーするだけです。ほとんどの場合:

String baseUrl = "http://query.yahooapis.com/v1/public/yql?q=";
String query = "select * from upcoming.events where location='San Francisco' and search_text='dance'";
String fullUrlStr = baseUrl + URLEncoder.encode(query, "UTF-8") + "&format=json";

URL fullUrl = new URL(fullUrlStr);
InputStream is = fullUrl.openStream();

JSONTokener tok = new JSONTokener(is);
JSONObject result = new JSONObject(tok);

is.close();

必要に応じて、URL の構成にコードを記述して見栄えを良くしたり、ここで使用したorg.jsonの代わりにGsonのような手の込んだ JSON パーサーを使用したりすることができます。

また、1 つの接続で複数のクエリを許可するなど、より堅牢な HTTP クライアント ライブラリからいくらかのマイレージを取得することもできます。

于 2013-07-05T19:13:11.503 に答える