How to convert map to url query string?

The most robust one I saw off-the-shelf is the URLEncodedUtils class from Apache Http Compoments (HttpClient 4.0). The method URLEncodedUtils.format() is what you need. It doesn’t use map so you can have duplicate parameter names, like, a=1&a=2&b=3 Not that I recommend this kind of use of parameter names.