Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.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 @自定义对象类型的RequestParams-参数名称_Java_Spring_Spring Mvc_Spring Boot - Fatal编程技术网

Java @自定义对象类型的RequestParams-参数名称

Java @自定义对象类型的RequestParams-参数名称,java,spring,spring-mvc,spring-boot,Java,Spring,Spring Mvc,Spring Boot,我有一个SpringBoot中管理的Spring控制器。 我想传入整个对象,而不是重复MyCustomObject的所有字段来保存一些输入 @ResponseBody @RequestMapping(value = "add", method = RequestMethod.POST) public ResponseEntity<?> add(@ModelAttribute MyCustomObject myObj) { } 在SpringBoot中是否有办法在服务器上查看REST

我有一个SpringBoot中管理的Spring控制器。 我想传入整个对象,而不是重复
MyCustomObject
的所有字段来保存一些输入

@ResponseBody
@RequestMapping(value = "add", method = RequestMethod.POST)
public ResponseEntity<?> add(@ModelAttribute MyCustomObject myObj) { }

在SpringBoot中是否有办法在服务器上查看RESTAPI(使用gradlew bootRun手动测试)。验证实际参数会很好。

您要查找的是JavaBeans约定,它查看类的公共API。您的类具有名为
beef
chicken
的属性,相应的方法是
get
/
set
(对于布尔型,则是
is

JavaBeans约定不关心如何存储属性——甚至很可能根本不存储属性(例如,
isEmpty()


至于更大的问题,当输入是一些连贯的整体(如表单)时,将使用
@modeldattribute
(或
@RequestBody
)。您可能有一个
UserRegistrationForm
,其中包含用户名、名/姓、电子邮件地址、密码。。。当参数之间的关系更松散时,例如搜索的各种参数,请使用
@RequestParam

因此,如果您有一个表单,并且正在添加一个具有多个参数的新对象,@modeldattribute是有意义的,但是如果您正在搜索具有大量松散字段的对象,例如“按名称查找”,然后将它们作为单独的请求参数将是有意义的。@StealthRabbi。如果您熟悉的话,它与命令对象模式非常匹配,我经常使用
@modeldattribute
s,它们实际上是服务接口中定义的对象。
@Entity
@Table(name = "my_stuff")
@Access(AccessType.FIELD)
@XmlAccessorType(XmlAccessType.FIELD)
public class MyCustomObject{

    private String mBeef;

    private String mChicken;


    public String getBeef() {} 
    public void setBeef(String beef);

    public String getChicken() {} 
    public void setChicken(String chicken);

}