创建将对象保存在对象中的控制器方法

时间:2019-02-18 02:27:34

标签: spring-boot spring-mvc controller microservices

我正在尝试为微服务创建控制器,在微控制器中创建了车辆对象,但是在该车辆对象中,我们必须首先保存注册对象。我可以执行车辆控制器,但是不确定如何将注册对象保存在车辆对象中。最后是JSON对象的外观。

JSON输入:

{
    "make":"Chevrolet", 
    "Model":"Silverado 1500", 
    "modelYear":2009, 
    "registration": {
        "licensePlate":"TOWME2", 
        "licensedTo":"Ford Towers"
    }
}

JSON输出:

{
    "id":[auto-generated], 
    "make":"Chevrolet", 
    "model":"Silverado 1500", 
    "modelYear":2009, 
    "registration": {
        "id":[auto-generated], 
        "licensePlate":"TOWME2", 
        "licensedTo":"Ford Towers"
    }
}

1 个答案:

答案 0 :(得分:0)

我也遇到了这个问题,这是因为spring-boot-starter-data-rest排除了ID字段。

要自定义其行为,可以扩展RepositoryRestConfigurerAdapter以公开特定类的ID。

import org.springframework.context.annotation.Configuration;
import org.springframework.data.rest.core.config.RepositoryRestConfiguration;
import org.springframework.data.rest.webmvc.config.RepositoryRestConfigurerAdapter;

@Configuration
public class RepositoryConfig extends RepositoryRestConfigurerAdapter {
    @Override
    public void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) {
        config.exposeIdsFor(Vehicle.class);
    }
}