HttpURLConnection的addRequestProperty和setRequestProperty区别
一、当只有addRequestProperty的时候
URL url = new URL("http://localhost:8080/net/listnets.jsp");
URLConnection connection = url.openConnection();
connection.addRequestProperty("name", "asad");
connection.addRequestProperty("name", "komal");
connection.addRequestProperty("class", "10th");
connection.addRequestProperty("Address", "Delhi 17");
Map map = connection.getRequestProperties();
Set set = map.entrySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
输出结果:name=[komal, asad]
Address=[Delhi 17]
class=[10th]
二、当只有setRequestProperty的时候
URL url = new URL("http://localhost:8080/net/listnets.jsp");
URLConnection connection = url.openConnection();
connection.setRequestProperty("name", "komal");
connection.setRequestProperty("name", "asad");
connection.setRequestProperty("class", "10th");
connection.setRequestProperty("Address", "Delhi 17");
Map map = connection.getRequestProperties();
Set set = map.entrySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
输出结果:
name=[asad]
Address=[Delhi 17]
class=[10th]
注意name的设置,会发生覆盖的作用。
三、当先set后add的时候
URL url = new URL("http://localhost:8080/net/listnets.jsp");
URLConnection connection = url.openConnection();
connection.setRequestProperty("name", "asad");
connection.addRequestProperty("name", "komal");
connection.addRequestProperty("class", "10th");
connection.addRequestProperty("Address", "Delhi 17");
Map map = connection.getRequestProperties();
Set set = map.entrySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
输出结果
name=[komal, asad]
Address=[Delhi 17]
class=[10th]
四、当先add后set的时候
URL url = new URL("http://localhost:8080/net/listnets.jsp");
URLConnection connection = url.openConnection();
connection.addRequestProperty("name", "komal");
connection.setRequestProperty("name", "asad");
connection.addRequestProperty("class", "10th");
connection.addRequestProperty("Address", "Delhi 17");
Map map = connection.getRequestProperties();
Set set = map.entrySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
name=[asad]
Address=[Delhi 17]
class=[10th]
五、结
setRequestProperty方法,如果key存在,则覆盖;不存在,直接添加。
addRequestProperty方法,不管key存在不存在,直接添加。