gpt4 book ai didi

java - 如何读取HTTP POST请求参数

转载 作者:行者123 更新时间:2023-12-01 10:46:31 26 4
gpt4 key购买 nike

我收到一个带有多个名称-值对参数的 application/x-www-form-urlencoded HTTP POST 请求。我得到的一些参数是运算符、操作数和值。运算符的参数从运算符 1 到运算符 20 运行,类似地,操作数和值的参数分别从操作数 1 到操作数 20 以及值 1 到值 20 运行。

示例 POST 数据 ....operator1=equals&operator2=equals&operand2=City&value1=John&operand1=Name&value2=Miami&operator3=&operator4=&operand3=&......

我的目标是为每个运算符、操作数和值三元组创建一个 POJO。

public class Criteria {

private String operand;
private String value;
private String operator;

public Criteria(String operand, String value, String operator) {
super();
this.operand = operand;
this.value = value;
this.operator = operator;
}
}

读取参数并正确映射运算符、操作数和值三元组的最佳方法是什么。现在我有两张 map 。第一个映射关联操作数和运算符 = {operand1=operator1,operand2=operator2,....}第二个映射将操作数和值关联起来 ={操作数1=值1,操作数2=值2,....}

使用这些映射,我将三个参数关联起来形成 Criteria POJO。

请提供有关如何更有效、更优雅地实现这一目标的任何建议。

最佳答案

创建一个新的 servlet 并覆盖 doPost :

 @WebServlet("/PostMe")
public class PostMe extends HttpServlet {

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
ArrayList<String> Params = new ArrayList<>();
for(int i=1;i<20;i++){
Params.add(request.getParameter("operand"+i.toString()); }
}

您得到的是一个包含所有参数的 arrayList。

关于java - 如何读取HTTP POST请求参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34139363/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com