首页 > Web开发 > 详细

问题:Form表单 自动装配 和 Ajax提交 @RequestBody自动装配

时间:2015-11-09 22:42:25      阅读:1451      评论:0      收藏:0      [点我收藏+]

在实践中发现,当使用一个类Son继承父类Father,对前端传来的数据进行自动装配成Son,Ajax方式和Form表单方式存在一个差异:

Father.java

public class Father{
    private int id;
    private String home;
    
    setter and getter.....
}

Son.java

public class Son extends Father{
    private String interest;
    private String school;
    
    setter and getter.....
}


  • Ajax传值时

        在处理方法,对参数使用注释@RequestBody,可以将数据封装到子类Son。

@RequestMapping("/save")
public String saveSon(@RequestBody Son son){
    System.out.println(son.getInterest());
    return "....";
}

        ajax传递包括父类Father的属性都是可以传递过来并自动装配到Son类中的。

  • Form表单传值时

        在处理方法时,不能使用@RequestBody,而是直接使用类型参数进行自动装配

@RequestMapping("/save")
public String saveSon(Son son){
    System.out.println(son.getInterest());
    return "....";
}

        Form表单传递包括父类Father的属性时,自动装配到Son类中会报异常,所以只能传递Son类独有的两个属性进行自动装配。

    这一点非常坑诶,弄了好久都没解决,求大神看到了帮忙!!!!!!

问题:Form表单 自动装配 和 Ajax提交 @RequestBody自动装配

原文:http://my.oschina.net/u/1020238/blog/528265

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!