开发避坑指南(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头字段。

相关推荐
岁岁种桃花儿2 分钟前
CentOS7 彻底卸载所有JDK/JRE + 重新安装JDK8(实操完整版,解决kafka/jps报错)
java·开发语言·kafka
一灰灰blog22 分钟前
Spring AI中的多轮对话艺术:让大模型主动提问获取明确需求
数据库·人工智能·spring
roman_日积跬步-终至千里39 分钟前
【Java并发】Java 线程池实战:警惕使用CompletableFuture.supplyAsync
java·开发语言·网络
毕设源码-钟学长41 分钟前
【开题答辩全过程】以 基于Springboot的扶贫众筹平台为例,包含答辩的问题和答案
java·spring boot·后端
CodeSheep程序羊1 小时前
拼多多春节加班工资曝光,没几个敢给这个数的。
java·c语言·开发语言·c++·python·程序人生·职场和发展
Java水解1 小时前
【JAVA 进阶】Spring AOP核心原理:JDK与CGLib动态代理实战解析
后端·spring
我是咸鱼不闲呀1 小时前
力扣Hot100系列19(Java)——[动态规划]总结(上)(爬楼梯,杨辉三角,打家劫舍,完全平方数,零钱兑换)
java·leetcode·动态规划
加油,小猿猿2 小时前
Java开发日志-双数据库事务问题
java·开发语言·数据库
暮色妖娆丶2 小时前
Spring 源码分析 BeanFactoryPostProcessor
spring boot·spring·源码
yuluo_YX2 小时前
Reactive 编程 - Java Reactor
java·python·apache