码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • springboot中自定义JavaBean返回的json对象属性名称大写变小写问题


    目录
    • 一、继承类
    • 二、手动添加Get方法
    • 三、@JsonProperty
    • 四、spring-boot json(jackson)属性命名策略

    开发过程中发现查询返回的数据出现自定义的JavaBean的属性值大小写格式出现问题,导致前端无法接受到数据,目前有四种解决方法,根据大佬的经验之谈,前两种是最简单便捷的,后两种是比较通用的方法。

    具体原因如下图:

    一、继承类

    一般在vo层(可自行理解,阿里巴巴的编程规范)自定义JavaBean来封装数据返回给前端,都是需要用到多表查询,或者有额外的属性增加时需要创建。

    例如:人的javaBean最好的方式是继承一个学生的javaBean在添加新的属性,这样再人的JavaBean中没有问题,学生的JavaBean返回的数据也是正常的,不会出现因为@Data注解导致的bug。

    二、手动添加Get方法

    这有可能是由于Lombok中的@Data注解导致的bug,手动添加get和set方法也可以解决该问题。(尝试了返回的格式是正常的)

    三、@JsonProperty

    其它博主的解决方案:字段属性加上注解@JsonProperty("aAnimalId")指定序列化后的名称,字段属性的get方法加上注解@JsonIgnore。

    本人尝试的结果:在字段属性加上注解@JsonProperty("aAnimalId"),接口返回数据的key就恢复正常了,或许是我和@Data混用的原因。但是分析了一下发现结果如下:

    结果分析:

    把首字母变成大小,从而和springboot返回json对象把字母变成小写相互抵消,从而导致可以返回正常的格式(自我理解,不确定对不对),但问题de到解决。各位可以尝试尝试,能解决开发问题的就是好办法。

    四、spring-boot json(jackson)属性命名策略

    全局配置命名策略,未尝试,大佬叫我了解了解,会有一定的收获。

    spring:
      jackson:
        property-naming-strategy: SNAKE_CASE
    

    记录每一个学习瞬间

  • 相关阅读:
    【我的OpenGL学习进阶之旅】Assimp库支持哪些3D模型格式?
    linux-文件服务
    在10.24这个特殊的日子里,带你详细解读1024!
    盘活内部人力资源,引入信息化工具支持人才选拔工作
    Doris/StarRocks数据库教程 (PB级实时数仓大数据分析平台、大规模分布式集群架构)
    前端:时间你用对了吗?
    CSP 2020 入门级第一轮1~17题解析
    酷雷曼第二期无人机技能培训圆满举办
    Cortex-M3如何跳出BusFault,跳过出错代码,程序往下执行
    53.基于微信小程序与SpringBoot的戏曲文化系统设计与实现(项目 + 论文)
  • 原文地址:https://www.cnblogs.com/MrDevil-k/p/17503947.html
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号