Como passo vários parâmetros no URL?

Eu estou tentando descobrir como passar vários parâmetros em um URL. Eu quero passar latitude e longitude da minha classe android para um servlet java. Como eu posso fazer isso?

URL url;
double lat=touchedPoint.getLatitudeE6() / 1E6;
double lon=touchedPoint.getLongitudeE6() / 1E6;
url = new URL("http://10.0.2.2:8080/HelloServlet/PDRS?param1="+lat+lon);

Neste caso, a saída (escrita para arquivo) é28.53438677.472097. Isso está funcionando, mas eu quero passar latitude e longitude em dois parâmetros separados para que meu trabalho no lado do servidor seja reduzido. Se não for possível, como posso, pelo menos, adicionar um espaço entrelat & lon para que eu possa usartokenizer classe para obter a minha latitude e longitude. Eu tentei seguir a linha, mas sem sucesso.

    url = new URL("http://10.0.2.2:8080/HelloServlet/PDRS?param1="+lat+" "+lon);
output- Nothing is written to file
        url = new URL("http://10.0.2.2:8080/HelloServlet/PDRS?param1="+lat+"&?param2="+lon);
output- 28.534386 (Only Latitude)
        url = new URL("http://10.0.2.2:8080/HelloServlet/PDRS?param1="+lat+"?param2="+lon);
output- 28.532577?param2=77.502996

Meu código de servlet é o seguinte:

req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
final String par1 =  req.getParameter("param1");
final String par2 = req.getParameter("param2");
FileWriter fstream = new FileWriter("C:\\Users\\Hitchhiker\\Desktop\\out2.txt");
BufferedWriter out = new BufferedWriter(fstream);
out.write(par1);
out.append(par2);
out.close();

Também queria saber que esta é a maneira mais segura e protegida de passar os dados do dispositivo android para o servidor.

questionAnswers(3)

yourAnswerToTheQuestion