繁体   English   中英

如何从url中提取命名参数?

[英]How to extract a named parameter from url?

我是Java EE环境的新手。 我想知道如何从Servlet中的请求URL中提取命名参数。

例如我有一个网址模式products/show/:id 如何从请求的网址中提取id的值?

在对Google进行了一些研究之后,我了解了@PathParam批注。 但是,它似乎仅适用于RESTful Webapp。 我需要一些通用的东西或简单的servlet所需的东西。

您可以尝试类似:

字符串pathWithValue = request.getPathInfo(); 字符串值= pathWithValue.subString(pathWithValue.indexOf(“ products / show /”。length())

getPathInfo会自动进行URL解码,并且也不包含查询字符串! 考虑到getPathInfo值取决于web.xml中的servlet映射配置:fe / *

如果要处理HTTPServletRequest对象,请尝试将其放入代码中:

Enumeration<String> e = request.getParameterNames();
while (e.hasMoreElements()) {
    String param = e.nextElement();
    System.out.println(param + ": " + request.getParameter(param));
}

这将遍历所有可用的形式或对象,您可以使用request.getParameter(id)来获取值(取决于单击的按钮,活动的字段等)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM