public URL addParameter(String key, String value) {
		if (key == null || key.length() == 0 || value == null || value.length() == 0) {
			return this;
		}
		// 如果没有修改，直接返回。
		if (value.equals(getParameters().get(key))) { // value != null
			return this;
		}

		Map<String, String> map = new HashMap<String, String>(getParameters());
		map.put(key, value);
		return new URL(protocol, host, path, map);
	}