Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.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
Data binding 如何使用SpringMVC数据绑定来实例化子类_Data Binding_Spring Mvc - Fatal编程技术网

Data binding 如何使用SpringMVC数据绑定来实例化子类

Data binding 如何使用SpringMVC数据绑定来实例化子类,data-binding,spring-mvc,Data Binding,Spring Mvc,考虑以下三个类,C是B的一个子类。B是a的一个字段。 如何将包含类C实例作为字段的类A实例从JSP页面传递到Spring控制器方法 class A{ private B b; public B getB(){return b;} public void setB( B b){ this.b = b;} } class B{ private int id; public int getId(){return id;} publ

考虑以下三个类,C是B的一个子类。B是a的一个字段。 如何将包含类C实例作为字段的类A实例从JSP页面传递到Spring控制器方法

class A{
     private B b;
     public B getB(){return b;}
     public void setB( B b){ this.b = b;}
}

class B{
     private int id;     
     public int getId(){return id;}
     public void setId(int id){this.id = id;}
}
class C extends B{
     private name;
     public String getName(){return name;}
     public void setName(String name){this.name = name;}
}
弹簧控制器示例:

@Controller
public class Handler{
     @RequestMapping("/work")
     public String work(@RequestParam( "objA" ) A objA ){
         if( C.getClass().isInstance( objA.getB() ) ){
               System.out.println("It works.");
          }
     }
}
假定的JSP页面不起作用:

<form method="post" action="work" commandName="objA" >

        <input type="submit" value="submit" /><br/>

        <input type="hidden" name="b.name" value="name" /><br/>
        <input type="hidden" name="b.id" value="1" /><br/>
</form>





我认为我们可以使用Jackson来绑定数据。然后我们可以把它当作 下面是一篇关于如何在SpringMVC环境中使用Jackson和ajax的文章