我正在使用 GET(通过 URL)发送两个参数,我希望我的请求方法能够像这样接收它们...
这是 Controller :
@RequestMapping("/basketItems")
public String basketItems(
@RequestParam("fname") String firstName,
@RequestParam("lname") String lastName,
Model model) {
Customer customer = customerManager.getCustomer(firstName, lastName);
Basket basket = basketManager.getBasket(customer.getReferenceNumber());
model.addAttribute("basket", basket);
model.addAttribute("totalItems", basketManager.getTotalNumberOfItems(basket));
model.addAttribute("totalPrice", basketManager.getTotalProductPrice(basket));
return "basketItems";
}
我收到这个错误
org.springframework.web.bind.MissingServletRequestParameterException:Required java.lang.String parameter 'lname' is not present
最佳答案
您的 HTTP 请求没有参数 lname
。在请求中包含该参数,或将 required = "false"
放在 lname
的注释上:
@RequestParam(value="lname", required="false")
如果你输入required = "false"
,那么分配给lname
的变量在该方法中将是null
,所以要注意在你的代码中。
有关更多信息,请查看 Spring MVC documentation 的相关部分.
关于java - 映射多个请求参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3541491/