<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## **@RequestParam和@RequestBody的使用場景** * [ ] 在GET請求中,不能使用@RequestBody(因為get請求沒有HttpEntity)。 * [ ] @RequestParam接收的參數是**來自requestHeader**中,即**請求頭**。 * [ ] @RequestBody接收的參數是**來自requestBody**中,即**請求體** * [ ] POST請求中,通過HttpEntity傳遞的參數,必須要在請求頭中聲明數據的類型Content-Type,SpringMVC通過使用HandlerAdapter 配置的HttpMessageConverters來解析HttpEntity中的數據,然后綁定到相應的bean上。 ### **1. @RequestParam** ① 支持POST和GET請求。 ② 只支持Content-Type:為application/x-www-form-urlencoded編碼的內容。**Http協議中,如果不指定Content-Type,則默認傳遞的參數就是application/x-www-form-urlencoded類型**) ### **2. @RequestBody** ① 不支持GET請求。 ② 必須要在請求頭中申明content-Type(如application/json)springMvc通過HandlerAdapter配置的HttpMessageConverters解析httpEntity的數據,**并綁定到相應的bean上**。 ### **3. 使用上的區別** **1. POST請求時** @RequestBody --> JSON字符串部分 @RequestParam --> 請求參數部分 application/json格局圖 **2. 從content-type方面總結:** ① form-data、x-www-form-urlencoded:不可以用@RequestBody;可以用@RequestParam。見postman的格局,這兩種方式的時候沒有json字符串部分。 **② application/json:json字符串部分可以用@RequestBody;url中的?后面參數可以用@RequestParam。見postman的格局** ![](https://img.kancloud.cn/03/3b/033bff2ec1ecb19d9ea6cbd88e4587c5_1118x765.png) **@RequestParam Map formData用于獲得鍵值對參數(URL參數)** **HttpServletRequest request用于接收file和content(http body參數)** ~~~ /** * 導入 */ @RequestMapping(value = "/leadingIn", method = RequestMethod.POST) public ResponseObj<Boolean> leadingIn(@RequestParam Map formData, HttpServletRequest request, Map<String, InputStream> files) { //測試 try { MultipartHttpServletRequest mulRequest = (MultipartHttpServletRequest) request; Set<Map.Entry<String, MultipartFile>> set = mulRequest.getFileMap().entrySet(); Map<String, InputStream> listFile = new LinkedHashMap<>(); System.out.println("個數" + set.size()); for (Map.Entry<String, MultipartFile> each : set) { String fileName = each.getKey(); MultipartFile file = each.getValue(); //這里需要上傳FTP try { listFile.put(fileName, file.getInputStream()); } catch (Exception ex) { return new ResponseObj<>(false, null); } } String formjson = mulRequest.getParameter("content"); ObjectMapper mapper = new ObjectMapper(); mapper.setVisibility(PropertyAccessor.FIELD, JsonAutoDetect.Visibility.ANY); mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); // boolean result = iInstallWorkOrder.upLoadFile(listFile); boolean result = true; return new ResponseObj<>(result, null); } catch (Exception ex) { System.out.println(ex.toString()); return new ResponseObj<>(false, null); } } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看