1. 程式人生 > >從request中傳遞過來的參數信息

從request中傳遞過來的參數信息

out bject tor 有一個 set 數據 lse values iterator

方法一
/**
 * @功能描述:    獲取從request中傳遞過來的參數信息
 *
 * @param req
 */
public static Map<String, Object> getMapsExt(HttpServletRequest req) {
        Map<String, Object> paramMap = new HashMap<String, Object>();
        Enumeration<String> enume = req.getParameterNames();
        while (enume.hasMoreElements()) {
                String key = (String) enume.nextElement();
                String[] values = req.getParameterValues(key);
                paramMap.put(key, values.length == 1 ? req.getParameter(key) : values);
        }
        return paramMap;
}

方法二

/**
 * @功能描述:    獲取從request中傳遞過來的參數信息
 *
 * @param req
 */
public Map<String, Object> getMaps(HttpServletRequest req){
        Map<String, Object> paramMap = new HashMap<String, Object>();
        // 從HttpServletRequest中獲取傳遞過來的數據
        Map<String, String[]> map = req.getParameterMap();  
        // 遍歷 map
        for (Iterator<Map.Entry<String,String[]>> iter = map.entrySet().iterator(); iter.hasNext();) {  
                    Map.Entry<String,String[]> element = (Map.Entry<String,String[]>) iter.next();  
                    // 獲取key值  
                    String strKey = element.getKey();  
                    // 獲取value,默認為數組形式
                    String[] value = element.getValue();  
                    // 存放到指定的map集合中
                    if (value.length <= 1) {
                            // 沒有或者只有一個value值
                            paramMap.put(strKey, value[0]);
                }else{
                        // 有多個value值
                        paramMap.put(strKey, value);
                }
        }
        for (String key : paramMap.keySet()) {
                System.out.println(key + "="+paramMap.get(key));
        }
        return paramMap;
}

從request中傳遞過來的參數信息