Java 6 接口 MultivaluedMap 有什么用?
2022-09-03 09:51:39
Java 6 接口 MultivaluedMap 有什么用?
该接口不属于“Java”,这意味着该接口不是核心库的一部分。它是层次结构的一部分,是 JAX-RS 规范的一部分。它由实现规范的框架(如 Jersey)使用。每当地图不仅应引用单个值,而且应引用任意数量的值时,就会使用它。例如,存储请求标头,您可能希望为每个键添加多个值。或者在某些情况下甚至没有键,因为与值相比,处理空列表更容易。javax.ws.rs
null
以这个HTTP标头为例:
接受编码:压缩;q=0.5,gzip;q=1.0
您可以通过以下方式对此进行建模:
MultivaluedMap<String, String> map = ...
map.add("Accept-Encoding", "compress;q=0.5");
map.add("Accept-Encoding", "gzip;q=1.0");
在泽西岛内部。这种类型的多值存储是Java中的一个常见问题,由其他地图实现者(如Guava)解决。
这基本上就是javadoc所说的:
键值对的映射。每个键可以有零个或多个值。
它是键值对的映射。每个键可以有零个或多个值
public interface MultivaluedMap<K,V> extends java.util.Map<K,java.util.List<V>>