今天是周六,在公司加班完成一个基于微服务架构的项目,出现了一个很尴尬、很诡异的问题,在此记录该问题

当用户登录时,用户微服务需要调用权限认证服务返回该用户拥有的所有角色名称,为了减少服务调用次数,所以权限认证服务的返回数据时 Map<Integer, List<String>> 即 Map<userid,List<rolename>>,但是问题出现了,当用户服务通过Feign去调用权限服务时,用Integer 类型的userid去从Map中查找角色信息却找不到了,containsKey(userid)也显示不包含该userid,但是却可以打印map,,却可以打印出该userid,  难道是Map.containsKey有问题 ? ? ? 突然,我想到一件事情,会不会是由于服务调用过程中,SpringBoot在做数据类型设置时,将Integer变成String类型了 ??? 然后,我就将Map<Integer, List<String>>变成 Map<String, List<String>> ,然后再讲userid也变为String类型,然后就成功了。。。

总结:在微服务的信息数据传输过程中,如果需要让SpringBoot做数据格式的包装,最好还是以String类型做为Key,不要使用Integer,因为Spring在解析JSON数据时,有可能直接把Key当做Integer类型的字符串当做String类型进行封装了。

微服务消息传输过程中的一些问题相关推荐

  1. 架构师图谱之微服务消息队列

    更多内容关注微信公众号:fullstack888 概述 "架构师图谱"是一个很宏大的命题,特别是优秀的架构师自身也是"由点到面再到图",一点点成长积累起来,尝试 ...

  2. 微服务-消息总线 SpringCloud Bus

    1. why 上篇中的配置中心服务端可以实现从远程仓库拉取实时变更的配置, 但是客户端无法直接实现配置更新, 需要向客户端发送一个post请求刷新配置(/actuator/refresh), 客户端微 ...

  3. 架构师图谱·微服务消息队列篇

    1. 概述 "架构师图谱"是一个很宏大的命题,特别是优秀的架构师自身也是"由点到面再到图",一点点成长积累起来,尝试写这系列文章的目的更多的是结合自身的一些经验 ...

  4. 如何使用phpMQTT连接阿里云微服务消息队列for IoT

    概述 关于阿里云的微服务消息队列,目前官方网站在接入示例部分给出了多种语言的SDK参考示例,但是还没有关于php的SDK及接入示例参考.下面主要介绍在使用目前主流的第三方SDK phpMQTT的过程中 ...

  5. java sqlserver ssl_拦截SQLSERVER的SSL加密通道替换传输过程中的用户名密码实现运维审计(一)...

    工作准备 •一台SQLSERVER 2005/SQLSERVER 2008服务 •SQLSERVER jdbc驱动程序 •Java开发环境eclipse + jdk1.8 •java反编译工具JD-C ...

  6. rest接口案例_REST和平:微服务与现实案例中的整体

    rest接口案例 by RDX 由RDX REST和平:微服务与现实案例中的整体 (REST in Peace: Microservices vs monoliths in real-life exa ...

  7. 计算机内部信号表现形式,信号是数据在传输过程中的什么的表现形式

    信号是数据在传输过程中的电信号的表现形式.如电信号可以通过幅度.频率.相位的变化来表示不同的消息.这种电信号有模拟信号和数字信号两类.信号是运载消息的工具,是消息的载体. 从广义上讲,它包含光信号.声 ...

  8. 公纵号发送提示信息(用户微服务--消息微服务)

    公纵号发送提示信息(用户微服务–消息微服务) 微信消息的集成(微信公众号) 场景:主要用于商城购买提示,金额提醒,活动广告等 申请微信测试号(和微信小程序有区别) https://mp.weixin. ...

  9. TCP/IP协议十二:关于MAC地址和IP地址在传输过程中变与不变的问题

    TCP/IP协议十二:关于MAC地址和IP地址在传输过程中变与不变的问题 1. 结论 2. 原因: 3. 例子 4. 参考: 1. 结论 mac变,ip不变. mac地址在同一个广播域传输过程中是不变 ...

  10. 无线充电电力传输过程中主要的损耗:

    无线充电电力传输过程中主要的损耗: 1.供电端的驱动组件,主要是MOSFET的开关损耗 2. 供电端和受电端的线圈与谐振电容通过电流的损耗 3.受电端的整流部分,交流到直流的转换损耗 4.受电端的稳压 ...

最新文章

  1. android weight(权重)的具体分析
  2. Linux 中断之中断处理浅析
  3. 【干货】就这一篇,解决90% 新手连接虚拟机的网络问题
  4. 数组array的一些用法
  5. 白鹭 修改底层 egret.js 库后再次编译 成 新的库
  6. JavaScript判断浏览器 Browser detect
  7. Python中的@classmethod修饰符
  8. 如何正确在NSMutableDictionary中加入一个变量int
  9. 手把手教你做个人 app
  10. mysql tar 卸载_mysql linux 安装卸载
  11. mysql实战22 | MySQL有哪些“饮鸩止渴”提高性能的方法?
  12. Halcon算子:灰度共生矩阵gen_cooc_matrix、cooc_feature_matrix、cooc_feature_image
  13. 设置Mathtype的粗斜体
  14. oracle11g在linux7的静默安装脚本
  15. 2022年中国服务外包行业发展现状及未来发展趋势分析:执行额达1753.5亿美元,同比增长10.92%[图]
  16. 1146-Table ‘performance schema.session variables‘ doesn‘t exist
  17. 在启动MYSQL时出现问题:“ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)”
  18. dna --- 一个 dart 到 native 的超级通道
  19. 洲际酒店集团加速布局粤港澳大湾区,与华侨城酒店集团达成合作
  20. 漏洞与木马:如何保护您的网络安全

热门文章

  1. centos 7 安装sql 审核工具 inception + archer
  2. 【英语阅读】纽约时报 | “杀死我们的将是饥饿,而不是新冠病毒”
  3. python怎么算一元二次方程_Python实现求解一元二次方程的方法示例
  4. 阿里云服务器华东 1、华东 2、华北 1、华北 2、华南 1 是哪个城市
  5. Oracle数据库将数字金额转换为大写汉字
  6. 阿里的BUG智能定位神器!直接定位线上BUG,超给力!必须收藏!
  7. KFC肯德基带给孩子的危害(转)
  8. C语言任意输入三个数构成三角形,随便输入三个数,看能否组成一个三角形
  9. Python案例之Numpy + Pandas——北京房价分析、2018年北京积分落户数据分析
  10. rdkit smiles支持和扩展