Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring:以编程方式从请求绑定对象_Java_Spring_Spring Mvc - Fatal编程技术网

Java Spring:以编程方式从请求绑定对象

Java Spring:以编程方式从请求绑定对象,java,spring,spring-mvc,Java,Spring,Spring Mvc,有没有一种方法可以通过编程将表单数据绑定到知道类类型的对象?我以为会有这样的事情 T instance = something.pleaseDoSomeMagicBind(class, request) 某个地方或类似的地方,但我到目前为止运气不好 谢谢Spring通过基于匹配名称将请求参数映射到处理程序方法参数类型实例的字段来绑定表单数据 .../asd?someValue=123 将绑定到的实例 public class Backing { private String some

有没有一种方法可以通过编程将表单数据绑定到知道类类型的对象?我以为会有这样的事情

T instance = something.pleaseDoSomeMagicBind(class, request)
某个地方或类似的地方,但我到目前为止运气不好


谢谢

Spring通过基于匹配名称将请求参数映射到处理程序方法参数类型实例的字段来绑定表单数据

.../asd?someValue=123
将绑定到的实例

public class Backing {
    private String someValue;
    //getters and setters
}
假设您有一个请求处理程序,如

@RequestMapping
public String handle(Backing backing) {
     return backing.getSomeValue(); // "123"
}
没有什么能像你所描述的那样存在。

多亏了索蒂里奥斯(你保存了我的理智)的暗示,我已经能够实现我一直在寻找的目标,如果其他人感兴趣,我将把我的发现留在这里

final WebDataBinder binder = new WebDataBinder(BeanUtils.instantiate(clazz));
ServletRequestParameterPropertyValues values = new ServletRequestParameterPropertyValues(request);
binder.bind(values);
final BindingResult result = binder.getBindingResult();

不幸的是,我需要该功能的地方不是控制器,而且在编译时我不知道支持对象的类型。@Matteorola检查
WebDataBinder
类以获得提示,但是,据我所知,您正在寻找的功能并不是现成的。