mport java.net.URLDecoder;
* <p>java获取request中的参数、java解析URL问号后的参数<p>
* @version 1.0
* @author li_hao
* @date 2016年12月21日
public class GetUrlParameter {
public static String getOneParameter(String url,String keyWord) {
String retValue = "";
try {
final String charset = "utf-8";
url = URLDecoder.decode(url, charset);
if (url.indexOf('?') != -1) {
final String contents = url.substring(url.indexOf('?') + 1);
String[] keyValues = contents.split("&");
for (int i = 0; i < keyValues.length; i++) {
String key = keyValues[i].substring(0, keyValues[i].indexOf("="));
String value = keyValues[i].substring(keyValues[i].indexOf("=") + 1);
if (key.equals(keyWord)) {
if (value != null || !"".equals(value.trim())) {
retValue = value;
} catch (Exception e) {
e.printStackTrace();
return retValue;
public static void main(String[] args) {
String url = "www.xxxx.com?id=100001&name=&age=25";
String value = getOneParameter(url,"id");
String name = getOneParameter(url,"name");
System.out.println(value);
System.out.println("".equals(name));
java获取request中的参数、java解析URL问号后的参数。有时候我们需要从request中获取参数,或者获取拼接在Url后面的参数,有时候一个一个去拿有点麻烦,一起拿出来放在一个map里面需要用哪个就取哪个,方便省事。1. java获取request中的参数:import java.io.UnsupportedEncodingException;import java.net.UR...
最近工作经常会碰到处理 URL ,可能会要求获取 URL 的文件名或拓展名,也有可能需要获取 URL 中参数 Key 的值。
比如下面这样一个 URL
http://127.0.0.1:8800/user/designer?userId=38&entry=1&appKey=340506427690999808
获取请求名
利用org.apache.commons.io.FilenameUtils
String s = "http://127.0.0.1:8800/user/designe
代码如下: package RequestPackage; import java.util.HashMap; import java.util.Map; public class CRequest { /** * 解析出url请求的路径,包括页面 * @param strURL url地址 * @return url路径 */ public static String UrlPage(String strURL) { String strPage=null; String[] arrSplit=null; strURL=strURL.trim().toLowerCase(); arrSpli
html中form提交参数一般通过post和get这两种方法,其中get提交参数的方法对应于HttpServlet的doGet方法,而post提交参数的方法对应于HttpServlet的doPost方法。
get方法提交参数的话会在url上显示,假如我们有的数据不想让别人看...
在 Java 中,可以使用 `HttpServletRequest` 对象的 `getInputStream()` 或 `getReader()` 方法来获取请求体的输入流或读取器,然后从中读取请求体中的参数。
下面是一个使用 `getInputStream()` 方法获取请求体参数的例子:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/api")
public class MyServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
InputStream inputStream = request.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
StringBuilder sb = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
sb.append(line);
String requestBody = sb.toString();
System.out.println(requestBody);
在上面的例子中,我们获取了请求体的输入流,并使用 `BufferedReader` 读取器将其读取为字符串。这里假设请求体中的参数是一个字符串,如果是 JSON 对象或其他格式的数据,可以使用相应的库进行解析。
另外,如果请求体中的参数是表单数据,可以使用 `request.getParameter()` 方法来获取它们。例如:
```java
String name = request.getParameter("name");
String age = request.getParameter("age");
String email = request.getParameter("email");
这里假设表单中有名为 `name`、`age` 和 `email` 的字段。
com.alibaba.fastjson.JSONException: syntax error, expect [, actual string, pos 0, fieldName null
12900