租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

java怎么获取url中的参数值,java怎么获取下拉列表的值

发布时间:2023-08-09 07:57:33

java怎样获得url中的参数值

在Java中获得URL中的参数值可使用`java.net.URLDecoder`类的`decode`方法来解码URL中的参数。具体步骤以下:
1. 使用`java.net.URL`类的构造函数创建一个URL对象,传入URL字符串作为参数。
2. 使用`getProtocol()`方法获得URL的协议。
3. 使用`getHost()`方法获得URL的主机名。
4. 使用`getPath()`方法获得URL的路径。
5. 使用`getQuery()`方法获得URL的查询部份。
6. 使用`java.net.URLDecoder`类的`decode`方法对查询部份进行解码,得到参数字符串。
7. 使用`java.lang.String`类的`split`方法将参数字符串依照"&"分割成键值对数组。
8. 遍历键值对数组,使用`java.lang.String`类的`split`方法将每一个键值对依照"="分割成键和值。
9. 将键值对添加到一个`java.util.Map`对象中,作为参数的键值对。
下面是一个示例代码:
```java
import java.net.URL;
import java.net.URLDecoder;
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
try {
String urlString = "http://example.com?param1=value1¶m2=value2";
URL url = new URL(urlString);
String protocol = url.getProtocol();
String host = url.getHost();
String path = url.getPath();
String query = url.getQuery();
Map params = new HashMap<>();
if (query != null) {
String[] keyValuePairs = query.split("&");
for (String keyValuePair : keyValuePairs) {
String[] keyValue = keyValuePair.split("=");
String key = keyValue[0];
String value = keyValue[1];
params.put(key, URLDecoder.decode(value, "UTF⑻"));
}
}
System.out.println("Protocol: " + protocol);
System.out.println("Host: " + host);
System.out.println("Path: " + path);
System.out.println("Params: " + params);
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
运行以上代码,输出结果为:
```
Protocol: http
Host: example.com
Path:
Params: {param1=value1, param2=value2}
```