在GET方式下,有多個引數時的處理

2022-06-25 16:06:17 字數 753 閱讀 2136

在乙個查詢介面中,需要的引數比較多,如果還是使用get方式進行請求的話,那麼,controller 中的方法的引數列表將會非常多,如:

public listgetname(@requestparam string query1,

@requestparam string query2,

@requestparam string query3,

......)

這樣的話引數太多,不好看

方法一

換成post請求,將所有引數封裝成乙個類,然後使用 @requestbody註解將引數自動解析成該類的乙個例項,如:

public listgetname(@requestbody querydto querydto) 

public class querydto

不過,有人認為restful「規範」,認為post不應該用來進行查詢。這麼想的確合理,不過,這個「規範」只是建議大家這麼來遵守,並不是強制要求。有興趣的,可以看看京東的請求,它的部分查詢請求也是用的post。

方法二

還是使用get請求,但是將所有請求引數通過json格式來傳遞,controller拿到引數後,將該json轉化為相應的物件,如:

public listgetname(@requestparam string querydtostr) 

public class querydto

Get方式和Post方式在傳遞中文時處理亂碼的訪問

亂碼的問題是由於 編碼字元集合,解碼字符集不一致造成的。各個伺服器在處理web請求中的中文,方式是不同的。如 tomcat在處理請求時預設使用的字符集是 iso 8859 1。別的伺服器也有它們的字符集 我們可以通過改變配置檔案中的引數更改伺服器使用的字符集如。tomcat 的server.xml中...

Mybatis傳遞多個引數的方式

下面給大家總結了以下幾種多引數傳遞的方法。public user selectuser string name,int deptid select from user where user name and dept id 裡面的數字代表你傳入引數的順序。這種方法不建議使用,sql層表達不直觀,且一...

js捕獲頁面get方式請求的引數

getquerystring name else 形參name為需要獲取的引數名,返回值為引數名對應的value.window.location 物件所包含的屬性 屬性描述 hash 從井號 開始的 url 錨 host 主機名和當前 url 的埠號 hostname 當前 url 的主機名 hre...