Java 如何将数组的JSON数组添加到模型中

Java 如何将数组的JSON数组添加到模型中,java,spring-boot,api,Java,Spring Boot,Api,目前我正在做一个API,将数组的JSON数组发送到mysql。但我不知道在启动API时如何将数据接收到模型类。我尝试使用ArrayList[],但仍然无法使用 这是我需要激发的数据 控制器: //insert Trip @RequestMapping(value = "inserting", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = Me

目前我正在做一个API,将数组的JSON数组发送到mysql。但我不知道在启动API时如何将数据接收到模型类。我尝试使用ArrayList[],但仍然无法使用

这是我需要激发的数据

控制器:

//insert Trip
    @RequestMapping(value = "inserting", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
    public @ResponseBody String add(@RequestBody ArrayList<Trips[]>[] c) {
        LOGGER.debug("start insert to database...");
        for(int i=0;i<c.length;i++){
             //trip = c[i];
            tripsService.saveTrips(trip); 
        }   
        LOGGER.debug("insert successfull...");
        return c.toString();
    }
//插入行程
@RequestMapping(value=“inserting”,method=RequestMethod.POST,consumes=MediaType.APPLICATION\u JSON\u value,products=MediaType.APPLICATION\u JSON\u value)
public@ResponseBody字符串添加(@RequestBody ArrayList[]c){
debug(“开始插入数据库…”);

对于(int i=0;i我认为不可能直接映射到您想要的对象,因为我建议您切换传入的数据类型,例如:

public @ResponseBody String add(@RequestBody ArrayList<ArrayList<Object>> c) {
public@ResponseBody字符串添加(@RequestBody ArrayList c){
然后,在控制器中,对数组中的每个元素进行迭代,实例化Trips对象,使用setter方法,设置Trips对象的值

for(int i=0;i<c.length;i++){
    List<Object> tripIncoming = c.get(i);
    Trips trip = new Trips();
    trip.setPropertie1(tripIncoming.get(0))
    trip.setPropertie2(tripIncoming.get(1))

    ....
    .... rest properties
    tripsService.saveTrips(trip); 
} 

for(int i=0;i不建议以JSON格式传递数组。您应该在实体trips上放置一个包装类。类似于:

public @ResponseBody String add(@RequestBody ArrayList<ArrayList<Object>> c) {
classmytrips{
List trips=new ArrayList();
//接二连三
}
最后,您将收到类似以下内容:

public @ResponseBody String add(@RequestBody ArrayList<ArrayList<Object>> c) {
//插入行程
@RequestMapping(value=“inserting”,method=RequestMethod.POST,consumes=MediaType.APPLICATION\u JSON\u value,products=MediaType.APPLICATION\u JSON\u value)
public@ResponseBody字符串添加(@RequestBody MyTrips MyTrips){
ArrayList[]c=myTrips.getTrips();
debug(“开始插入数据库…”);

对于(int i=0;我可以切换您拥有的json结构吗?无法修复只能修复array的json数组在控制器ArrayList[]要按ArrayListin顺序映射到这个Trips对象,您需要有一个json结构:key->value,您没有它,所以它将无法映射ArrayList,但如何将其转换为Trips模型类?bcsz我需要。保存(Trips)但是我要为Trips类设置150++字段,还有其他动态方法吗?你的意思是Trip类有150个字段吗?实际上,我为另一个项目设置了另一个带有150++字段的模型类。Bcsz不想在这里提问,所以我只使用具有较少字段的Trip类,用同样的方法尝试一下。我想你可以创建一个自定义方法d、 在可以设置不同属性的地方,可能需要编写很多代码,但我在myTrips.getTrips()中遇到了一个错误“无法从列表转换为ArrayList[]”