1

[http://localhost:8080/resource/headline3-7] のような URL があります。

この URL では

リソース - サーブレット

headline3-7 - リクエストパラメータ

サーブレットでは、次のコードを使用しています:

@WebServlet(name = "ArticleServlet", value = "/resource/*")
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws     ServletException, IOException {
     System.out.println("hiii"+ request.getQueryString());
}  

この例でリクエストパラメータを取得する方法を理解しようとしていますか?

コントロールがサーブレットに転送されていることがわかります

ポップアップしたもう1つのことは、 Application にSpringフレームワークを使用していて、 URLrewrite.xml があることです.IDを取得するのに役立つ次のルールを追加しようとしていますが、機能していないようです:

 <rule>
    <from>^/resource/([A-Z]+)$</from>
    <to>/resource/id=$1</to>

</rule>

回答 : 実際に使用した URL パターンと正規表現は次のとおりです。

 <rule>
    <from>^/resource-center/([a-z A-Z-0-9'-_]+)$</from>
    <to>/resource?id=$1</to>
 </rule>

この式は私にとってはうまくいき、使用したサーブレットは req.getparmeter function() を使用します

4

1 に答える 1

0

request.getQueryString() は、厳密に言えばクエリ文字列がないため、うまくいきません。次のような独自の解析を少し行う必要があります。

String param = null;
String[] paths = request.getPathInfo().split("/");
if (paths.length > 0) {
    param = paths[paths.length-1];
}
System.out.println(param);
于 2012-06-29T02:01:52.160 に答える