gpt4 book ai didi

java - 每个 bean 的 HandlerMethodArgumentResolver 的替代方案

转载 作者:太空宇宙 更新时间:2023-11-04 12:44:09 25 4
gpt4 key购买 nike

假设我有一个标准的 Spring MVC 应用程序,其中有接受表单变量的 Controller 。这些是编辑简单 POJO bean 的基本形式。用户,地址,日常的东西,没什么特别的。

我想将请求参数映射到我的 bean,所以我的 Controller 方法中没有一堆 @RequestParam 注释。我做了一些研究,发现了 HandlerMethodArgumentResolver。看起来它会成功。

但是我需要为我想要映射的每个 bean 创建一个 HandlerMethodArgumentResolver 类吗?

我有很多这样的东西,看起来工作量很大。我的参数名称与变量名称匹配,因此我可以在前端 JSON 形式数据,通过 ajax 调用发送该数据,然后将其编码到 Controller 中。但有没有更干净的方法来做到这一点?

最佳答案

如果您在前端使用字段构建 JSON,则可以使用 @RequestBody在你的 Controller 中:

@RequestMapping("/something")
public void someMethod(@RequestBody SomeClass data) {
// work with your data
}

SomeClass 将是一个包含所有字段的常见 Java bean:

public class SomeClass {

private int field1;

private String field2;

private double field3;

// getters & setters
}

为此,您需要配置一个用于序列化和反序列化 JSON 的 HttpMessageConverter。我认为如果 Spring 检测到 Jackson library 会自动为您执行此操作位于类路径中。

关于java - 每个 bean 的 HandlerMethodArgumentResolver 的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36512432/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com