繁体   English   中英

为springboot微服务创建一个pojo

[英]Creating a pojo for springboot microservice

我想在Spring Boot中开发微服务应用程序。 我创建了2个服务,分别称为用户服务和配方服务。

我的问题是一个用户可以有多个食谱,但是我无法确定食谱字段的类型。 我不能使用private List<Recipe> recipes因为我希望每个微服务都应该独立。 你有什么主意吗?

如果我确定那样的private List<Long> recipes该如何与邮递员发送请求?

{
    "id": 102,
    "userName": "figen",
    "email": 3,
    "recipes":5,6,7     // line 5
}

由于第5行,此请求无法正常工作

import org.springframework.data.mongodb.core.mapping.Document;

import javax.persistence.*;
import java.util.ArrayList;
import java.util.List;

//@Entity
@Document(collection = "User")
public class User {

    @Id
    private String id;
    private String userName;

    private Long email;

    private List<Long> recipes; // I cannot determine this type(one-to-many relationship)

    public User(){

    }

    public User(String id, String userName, Long email,List<Long> recipes) {
        this.id = id;
        this.userName = userName;
        this.email = email;
        this.notes = recipes;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public Long getEmail() {
        return email;
    }

    public void setEmail(Long email) {
        this.email = email;
    }

    public List<Long> getRecipes() {
        return recipes;
    }

    public void setRecipes(List<Long> recipes) {
        this.notes = recipes;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", userName='" + userName + '\'' +
                ", email='" + email + '\'' +
                ", recipes=" + recipes+
                '}';
    }
}

在配方中添加[]后,它将起作用。

{
    "id": 102,
    "userName": "figen",
    "email": 3,
    "recipes":[5,6,7]  
}

"recipes":5,6,7将导致错误,因为配方的类型为List 您可以通过邮递员通过列表,如下所示

  • 对于"intArrayName" : [111,222,333]列表"intArrayName" : [111,222,333]
  • 对于字符串"stringArrayName" : ["a","b","c"]列表"stringArrayName" : ["a","b","c"]

对于上述UseCase,您可以将其发送为

{
    "id": 102,
    "userName": "figen",
    "email": 3,
    "recipes":[5,6,7]    
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM