欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springmvc如何使用map接收參數(shù)

 更新時(shí)間:2021年10月28日 14:59:40   作者:changerzhuo  
這篇文章主要介紹了springmvc如何使用map接收參數(shù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

springmvc 使用map接收參數(shù)

開(kāi)發(fā)過(guò)程中有時(shí)候我們并不知道前端都會(huì)傳遞哪些參數(shù)給到后端. 為方便擴(kuò)展接口功能, 在請(qǐng)求參數(shù)不改變的情況下兼容前端新增的入?yún)⒌男枨螅?我們會(huì)考慮使用map接受參數(shù). 這樣無(wú)論前端加減參數(shù), controller的入?yún)⑹遣恍枰儎?dòng)的.

第一種情況:請(qǐng)求參數(shù)有多組

如:一組個(gè)人信息, 一組地址信息

請(qǐng)求參數(shù):

{
    "personInfo": {
        "name1": "zona",
        "name2": "carl",
        "age": 23
    },
    "address": {
        "上海": "code1",
        "北京": "code2"
    }
}

controller層代碼:

    // map的value參數(shù)類型設(shè)置為object
    @PostMapping("/map")
    public void map(@RequestBody Map<String, Object> mapParam){
        System.out.println(mapParam);
    }

controller層接受參數(shù):

第二種情況:所有的參數(shù)不分組

請(qǐng)求參數(shù):

{
    "name1": "zona",
    "name2": "carl",
    "age": 23
}

controller層代碼

   // map的value類型是String
    @PostMapping("/map")
    public void map(@RequestBody Map<String, String> mapParam){
        System.out.println(mapParam);
    }

controller層接受參數(shù)

用map接收參數(shù)的幾個(gè)注意的問(wèn)題

public void TbConOrdPriceSubmit(@RequestParam(value="cdListKeyArrayFront",required=false) String[] cdListKeyArrayFront,@RequestParam(required=false) Map parMap,
HttpSession session, HttpServletRequest request, HttpServletResponse response, Model model, TbConOrdVo tbConOrdVo)

1、接受map的參數(shù)不能寫value

否則不能自動(dòng)打包前面的字段,其與模型驅(qū)動(dòng),屬性驅(qū)動(dòng)不沖突,最多就是數(shù)據(jù)冗余

2、對(duì)于多個(gè)同名字段

map只會(huì)取第一個(gè),不會(huì)變成字符數(shù)組,或用,隔開(kāi),此時(shí)只能用屬性驅(qū)動(dòng),或模型驅(qū)動(dòng)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論