Spring mvc 将对象[i]发送回控制器Spring MVC

Spring mvc 将对象[i]发送回控制器Spring MVC,spring-mvc,Spring Mvc,我有搜索航班页面,当完成搜索后,我将航班列表发送到jsp页面 flights = getAllFlight(); ModelAndView mav = new ModelAndView("search_result"); mav.addObject("flights", flights); return mav; 这里是显示航班结果的jsp页面 <c:forEach var="flight" items="${flights}"> <!-- display a little

我有搜索航班页面,当完成搜索后,我将航班列表发送到jsp页面

flights = getAllFlight();
ModelAndView mav = new ModelAndView("search_result");
mav.addObject("flights", flights);
return mav;
这里是显示航班结果的jsp页面

<c:forEach var="flight" items="${flights}">
<!-- display a little information, not all flight information -->
....
<button type="submit" class="btn btn-success">Add</button>
</c:forEach>

在每个航班行中,使用添加按钮将航班信息添加到数据库中,当单击添加按钮时,如何发回航班对象?

应该有一些唯一的键来唯一地标识每个航班,它可以是一个属性,如航班id或某个属性的组合

如果您想通过表单提交发送此值,您可以保留一个带有值flight id的隐藏输入,一旦您提交表单,您将在controller中获得它

若你们想用ajax发送,你们可以在列表中添加这个航班id作为数据属性,如下所示

单击add按钮,使用jquery数据函数获取该值并进行ajax调用。

我解决了这个问题, 通过创建类控制器的ArrayList属性, 单击“订阅”按钮后,将列表索引发送回控制器

..... 转载

类控制器处理搜索航班公告和订阅航班公告,与ArrayList相同

@Controller
@RequestMapping(value = "/flight")
public class FlightController {
    private ArrayList<Flight> flights;

    @RequestMapping(value = { "/search" }, method = RequestMethod.POST)
    public ModelAndView getFlightFromSearch(@ModelAttribute Parameters param
    // ,Map<String, Object> model
    ) throws IOException, Exception {

             // send arraylist of light to jsp
    }

    @RequestMapping(value = "/subcribe", method = RequestMethod.POST)
    public ModelAndView subcribeFlight(@RequestParam("index") int index, @ModelAttribute Parameters param) throws ParseException 
    {
        Flight flight = flights.get(i);
                .......
    }
}