在Spring MVC中,可以通过以下步骤将ajax中的FormData和JSON对象传递给Controller:
下面是一个示例代码:
前端页面代码:
<form id="myForm">
<input type="text" name="name" />
<input type="text" name="age" />
<button type="button" onclick="submitForm()">Submit</button>
</form>
<script>
function submitForm() {
var formData = new FormData(document.getElementById("myForm"));
var jsonData = JSON.stringify(Object.fromEntries(formData));
$.ajax({
url: "/example",
type: "POST",
data: jsonData,
contentType: "application/json",
success: function(response) {
// 处理响应结果
}
});
}
</script>
Spring MVC Controller代码:
@Controller
public class ExampleController {
@PostMapping("/example")
@ResponseBody
public String handleRequest(@RequestParam String jsonData) {
// 将JSON字符串转换为Java对象
ObjectMapper objectMapper = new ObjectMapper();
try {
ExampleData exampleData = objectMapper.readValue(jsonData, ExampleData.class);
// 进行业务处理
// ...
return "Success";
} catch (IOException e) {
e.printStackTrace();
return "Error";
}
}
}
其中,ExampleData是一个自定义的Java类,用于存储表单数据的Java对象。
这是一个简单的示例,你可以根据实际需求进行相应的修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云