我是Spring MVC的新手。挑战是我想将所有JSON或XML格式的表单数据发送到Cotroller方法
Spring MVC是否提供开箱即用的功能?如果没有,那么我将如何在Controller方法中接收所有表单数据?在收到所有表单数据之后,我可以将其转换为JSON或XML。
凭借我有限的经验,我可以在@RequestPrameter
的帮助下获得个人价值,但不确定如何在控制器中获得完整数据方法
注意:我不想将表单值建模到任何模型对象。只是想收到价值 JSON / XML格式并将其作为clob保存到数据库中。
答案 0 :(得分:0)
有两种方法可以将完整的表单数据传输到Controller。
使用此方法您不使用Spring MVC的表单元素类属性绑定功能。
在这种方法中,您无需使用request.getParameter(“element_name”)获取表单的每个值;相反,你会得到填充POJO对象,这可以更方便工作。
此外,您可以更轻松,更整洁地处理数据类型绑定错误。
对于表单元素到类属性绑定的参考, 最佳帮助:http://www.mkyong.com/spring-mvc/spring-mvc-form-handling-example/
根据您的要求,您不能直接获取JSON / XML格式,而是需要调用onSubmit上的javascript函数,然后创建所需表单的JSON / XML,然后您可以提交表单。
答案 1 :(得分:0)
在我看来,实现这个的最好方法是通过http POST请求以json格式发送数据,并在控制器方法中获取它:
@RequestMapping(method = RequestMethod.POST, value = "/data", headers = "Accept=application/json")
@ResponseBody
public List postData(@RequestBody String data) { {
...
// here for example you can use GSON or Jackson to deserialize json to java instance
}