【发布时间】:2018-01-10 01:42:34
【问题描述】:
我正在努力解决其中一个春季注释,即@PathVariable。我期待着为你们寻求帮助..
我的目标是让网址看起来像这样“../product/1”而不是“../product?productId=1”,但我的主要问题是我想在文本中输入 ID 号框,然后使用按钮提交。示例:如果我在文本框中输入 1,我想从我的数据库中接收 id 为 1 的页面。
所有这些都在我的购物车页面中进行。
我的代码
JSP 文件
<form:form class="form-inline my-2 my-lg-0" action="product" method="get">
<input class="form-control mr-sm-2" type="text" placeholder="Search" name="productId"/>
<button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
</form:form>
控制器
@Controller
@RequestMapping("/")
public class OrderController {
@Autowired
ProductService productService;
@RequestMapping("/cart")
public String showCart() {
return "cart";
}
@RequestMapping(value = "/product/{productId}", method = RequestMethod.GET)
public String getProductById(@PathVariable(value = "productId") int productId, Model model) {
model.addAttribute("product", productService.findProductById(productId));
return "product";
}
}
【问题讨论】: