在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java/ springmvc如何一個表單傳遞多個不同類型對象,其中有l(wèi)ist。

springmvc如何一個表單傳遞多個不同類型對象,其中有l(wèi)ist。

代碼是這樣的

表單內(nèi)容:

<input name="item.title" type="text" />
<input name="itemDesc.desc" type="text" />
<input name="itemImg.src" type="text" />
<input name="itemImg.src" type="text" />
<input name="itemImg.src" type="text" />

Controller:

    @RequestMapping(value="/new", method=RequestMethod.POST)
    @ResponseBody
    public MsgResult createItem(TbItem item, TbItemDesc itemDesc, List<TbItemImg> itemImg, HttpServletRequest request, HttpServletResponse response) {
        //itemImg出錯
        //...
    }

    @InitBinder("tbItem")
    public void itemBinder(WebDataBinder webDataBinder){
        webDataBinder.setFieldDefaultPrefix("item.");
    }
    
    @InitBinder("tbItemImg")
    public void itemImgBinder(WebDataBinder webDataBinder){
        webDataBinder.setFieldDefaultPrefix("itemImg.");
    }
    @InitBinder("tbItemDesc")
    public void itemDescBinder(WebDataBinder webDataBinder){
        webDataBinder.setFieldDefaultPrefix("itemDesc.");
    }

其他兩個參數(shù)是正常傳遞的,但是img沒有轉化成List,報錯:
Failed to instantiate [java.util.List]: Specified class is an interface

怎么解決,謝謝各路大神。

回答
編輯回答
何蘇葉

頁面上傳了三個String,控制層直接用List<String>接收,這樣收據(jù)類型對不上,肯定不能接收到。
建議: 前端頁面直接把三個圖片地址拼接成一個字符串,逗號隔開,控制層直接用一個String接收,然后在Java中轉換成List

2018年3月12日 11:24