40

Java で非常に単純な URL 操作をいくつか行う必要があります。クエリでパラメーターの値を取得したり、更新したりします... commons-lang パッケージでそれを行う単純なユーティリティ クラスを見つけることを期待していましたが、違います。単純な問題であることはわかっていますが、すでに書かれていることがあるのに、なぜもう一度それをするのでしょうか? 知っていますか?

少なくとも次の機能が必要です。

String myUrl = "http://www.example.com/test.html?toto=1&titi=2";

// get the value of a parameter
String parameterValue = UrlUtils.getParameterValue(myUrl, "toto");
Assert.equals(parameterValue, "1");

// update a parameter
String newUrl = UrlUtils.updateParameter(myUrl, "toto", 3);
parameterValue = UrlUtils.getParameterValue(myUrl, "toto");
Assert.equals(parameterValue, "3");

理想的には、エンコーディングに関連するすべての問題を処理し、java.net.Url と Strings を処理します。

ご協力いただきありがとうございます !

4

3 に答える 3

7

あなたが望むのは、URL マニピュレーターではなく、クエリ文字列パーサーと呼ばれるものだと思います

于 2008-10-20T14:39:51.557 に答える
4

Apache の httpcomponents ライブラリには URL デコーダがあります: http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/client/utils/URLEncodedUtils.html

Httpcomponents は、commons http クライアントの後継です。

于 2011-02-10T19:21:22.703 に答える
3

Indeed は、クエリ文字列と数値を解析するための効率的な Java ライブラリをリリースしました。

http://engineering.indeed.com/blog/2014/02/effective-query-string-parsing-util-urlparsing/

https://github.com/indeedeng/util/tree/master/urlparsing

(免責事項: 私は Indeed のエンジニアリング ディレクターです。)

于 2014-02-23T21:09:16.173 に答える