1

我有一个如下所示的 URL:[http://localhost:8080/resource/headline3-7]

在这个网址

资源 - Servlet

标题3-7 - 请求参数

在 Servlet 我使用以下代码:

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

我想弄清楚如何在这个例子中获取请求参数?

我可以看到控件正在转移到 Servlet

弹出的另一件事是我正在为 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>

这个表达式对我有用,我使用的 servlet 使用 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 回答