开发避坑指南(72):HttpHeaders 的add()方法和set()方法有什么区别?

问题

springframework中的HttpHeaders 的add()方法和set()方法有什区别?

解答

add()方法用于向指定头字段添加新值,不会覆盖该字段已有的值。这使得同一个头字段可以拥有多个不同的值。

set()方法则用于设置头字段的值,如果该字段已存在,则会用新值覆盖原有的值。这种方法适用于需要确保头字段只有单一值的场景。

java 复制代码
httpGet.add("Cookie", "aa");
httpGet.add("Cookie", "bb");

上述代码最终会保留两个Cookie头字段,值分别为"aa"和"bb"。

java 复制代码
httpGet.set("Cookie", "cc");

set()则会覆盖之前所有的Cookie值,最终只有一个值为"cc"的Cookie头字段。

相关推荐
兔小盈几秒前
多线程篇-(二)线程创建、中断与终止
java·开发语言·多线程
jnrjian5 分钟前
Library Cache Load Lock library cache pins are replaced by mutexes
java·后端·spring
abcnull14 分钟前
传统的JavaWeb项目Demo快速学习!
java·servlet·elementui·vue·javaweb
risc12345620 分钟前
【lucene】PostingsEnum跟TermsEnum 的区别是啥?
java·lucene
小江的记录本37 分钟前
【Kafka核心】Kafka高性能的四大核心支柱:零拷贝、批量发送、页缓存、压缩
java·数据库·分布式·后端·缓存·kafka·rabbitmq
SamDeepThinking41 分钟前
程序员过35岁之前,应该完成的三件事
java·后端·程序员
大数据三康1 小时前
Java字符统计:从输入到输出的完整解析
java·学习·循环结构
Mr_pyx1 小时前
【LeetHOT100】LRU缓存——Java多解法详解
java·开发语言
952361 小时前
SpringAOP
java·后端·学习·spring