java - 使用提供的 json 字符串创建模型

标签 java json spring-boot

我想在 Spring Boot 中使用以下 json 字符串创建模型。

{
  "name": "inox",
  "seatInfo": {
    "A": {
      "numberOfSeats": 10,
      "aisleSeats": [
        0,
        5,
        6,
        9
      ]
    },
    "B": {
      "numberOfSeats": 15,
      "aisleSeats": [
        0,
        5,
        6,
        9
      ]
    },
    "D": {
      "numberOfSeats": 20,
      "aisleSeats": [
        0,
        5,
        6,
        9
      ]
    }
  }
}

到目前为止我已经这样做了。

 import java.util.Map;
 import javax.persistence.*;

 @Entity
 public class Screen {

     @Id
     @GeneratedValue
     private Long id;
     private String name;
     private Map<String, RowInfo> seatInfo;

     //getter and setters
 }


 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
 import javax.persistence.Id;
 import java.util.Arrays;

 @Entity
 public class RowInfo {

     @Id
     @GeneratedValue
     private Long id;
     private int numberOfSeats;
     private Integer aisleSeats[];

     //getters and setters
 }

应用程序启动时出现以下异常。

嵌套异常是org.hibernate.MappingException:无法确定类型:java.util.Map,表:屏幕,列:[org.hibernate.mapping.Column(seat_info)]

最佳答案

将 Map 接口(interface)更改为 HashMap 类型(或您喜欢的类型)。

@Entity
public class Screen {

     @Id
     @GeneratedValue
     private Long id;
     private String name;
     private HashMap<String, RowInfo> seatInfo;

     //getter and setters
 }


 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
 import javax.persistence.Id;
 import java.util.Arrays;

 @Entity
 public class RowInfo {

     @Id
     @GeneratedValue
     private Long id;
     private int numberOfSeats;
     private Integer aisleSeats[];

     //getters and setters
 }

关于java - 使用提供的 json 字符串创建模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52790474/

相关文章:

java - 哪个性能更好 : test ! = null or null != test

java - 循环我的列表,以便遍历并组合整个列表

javascript - 如何将数组的 Javascript 数组转换为 JSON 字符串

c# - 通过 JsonConverter 属性对 JSON.NET 上的类进行 NullValueHandling 设置(对于 Azure DocumentDb)

java - 更改上下文根后,前端角度项目无法与 Spring boot 项目一起使用

java - 强制 Maven 在项目目录中获取依赖项

java - 正则表达式错误,请改用非捕获组

javascript - 使用 JSON 文件中的数据制作模型的 Backbone 集合

java - Spring Boot Actuator不读取git.properties

java - 是否有更好的方法在 Controller 级别处理 POST 请求?