假设我有一个像这样的简单搜索页面:
<form:form id="productsForm" method="post" modelAttribute="productsFormBean">
<form:label path="name">Name : </form:label>
<form:input path="name" />
<button id="filterSubmit" type="submit">Submit</button>
</form:form>
用户可以输入名称并提交页面,但他也可以在不输入任何内容的情况下提交页面。
是否可以获得这样的 RESTful url:
- 用户输入名称“xyz”并提交页面:www.mywebpage.com/products/name/xyz/
- 用户提交的页面没有名称:www.mywebpage.com/products/
这是我的控制器:
@RequestMapping(params = "search=true", value = "/**", method = RequestMethod.POST)
public String searchHandler(@Valid final ProductsFormBean productsFormBean, final Model model) {
// (...)
return "productsSearch";
}
如果我更改表单的“action”属性,则 url 会更改。通过更改 onSubmit 事件的操作,我已经使用 javascript 实现了这一点。但这不是一个干净的解决方案。是否可以直接在控制器中实现?