gpt4 book ai didi

java - Spring MVC 无法实例化表单内的接口(interface)字段

转载 作者:太空宇宙 更新时间:2023-11-04 10:51:20 26 4
gpt4 key购买 nike

我正在开发 Spring MVC 应用程序,并且表单内有接口(interface)字段。

public class MyForm {
private MyFieldInterface myField;
}

在 Controller 中,在请求映射方法中,我们将表单作为模型属性

@Controller
public class MyController
@RequestMapping(value="/myAction")
public String process(@ModelAttribute("myForm") MyForm form....

当它将请求绑定(bind)到表单时,它无法创建 myField。错误是org.springframework.beans.BeanInstantiationException:无法实例化[...MyFieldInterface]:指定的类是一个接口(interface)

数据来自 JSP,但 myField 为空。它尝试在放置请求中的数据之前创建该字段,但它不能从接口(interface)实例化。

我的问题是 - 如何强制 Spring 从实现此接口(interface)的类实例化它?这可能吗

public MyClass implements MyFieldInterface

最佳答案

  1. 抛出 BeanInstantiationException 是因为您无法在 Spring 表单支持 bean 中使用接口(interface)。
  2. 不要在表单支持 bean 中使用您自己的 java 类。
  3. 使用将原始类型的值包装在对象中的 Java 类。示例:字符串、长整型、整数等。

关于java - Spring MVC 无法实例化表单内的接口(interface)字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47812231/

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