The Code is as follows:
Package COM. yanek. util; import Java. util. arraylist; import Java. util. collections; import Java. util. hashmap; import Java. util. iterator; import Java. util. list; import Java. util. map; import Java. util. set; public class httputil {/*** @ Param ARGs */public static void main (string [] ARGs) {Map <string, string> paramvalues = new hashmap <string, string> (); paramvalues. put ("B", "2"); paramvalues. put ("A", "1"); paramval Ues. put ("C", "3"); paramvalues. put ("D", "4"); paramvalues. put ("e", "5"); system. out. println ("post Params:" + getparams ("Post", paramvalues); system. out. println ("Get Params:" + getparams ("get", paramvalues); system. out. println ("post Params:" + getparamsorderbykey ("Post", paramvalues); system. out. println ("Get Params:" + getparamsorderbykey ("get", paramvalues);}/*** get the parameter list string * @ Param Method Request type get or Post * @ Param paramvalues parameter map object * @ return parameter list string */public static string getparams (string method, Map <string, string> paramvalues) {string Params = ""; set <string> key = paramvalues. keyset (); string beginletter = ""; if (method. equalsignorecase ("get") {beginletter = "? ";}For (iterator <string> it = key. iterator (); it. hasnext ();) {string S = (string) it. next (); If (Params. equals ("") {Params + = beginletter + S + "=" + paramvalues. get (s);} else {Params + = "&" + S + "=" + paramvalues. get (s) ;}} return Params ;} /*** get the parameter list string by key * @ Param Method Request type get or post * @ Param paramvalues parameter map object * @ return parameter list string */public static string getparamsorderbykey (string method, map <s Tring, string> paramvalues) {string Params = ""; set <string> key = paramvalues. keyset (); string beginletter = ""; if (method. equalsignorecase ("get") {beginletter = "? ";}List <string> paramnames = new arraylist <string> (paramvalues. size (); paramnames. addall (paramvalues. keyset (); collections. sort (paramnames); For (string paramname: paramnames) {If (Params. equals ("") {Params + = beginletter + paramname + "=" + paramvalues. get (paramname);} else {Params + = "&" + paramname + "=" + paramvalues. get (paramname) ;}} return Params ;}}
The output is as follows:
post params::::d=4&e=5&b=2&c=3&a=1get params::::?d=4&e=5&b=2&c=3&a=1post params::::a=1&b=2&c=3&d=4&e=5get params::::?a=1&b=2&c=3&d=4&e=5