一个项目需求要求返回值为JSON格式,且大多数字段是首字母大写,还有些是类似N_TX这样的格式,在输出这样的结果时遇到了问题,由于时间紧,就直接拷贝需要的结果字段建立JavaBean类,本以为最后直接调用JSON.toString(obj)返回结果即可,没想到返回值中自动将首字母变小写。查看fastjson源码发现关键在下面一段

public static List computeGetters(Class> clazz, Map aliasMap, boolean sorted) {

String propertyName;

if (Character.isUpperCase(c3)) {

if (compatibleWithJavaBean) {

propertyName = Introspector.decapitalize(methodName.substring(3));

} else {

propertyName = Character.toLowerCase(methodName.charAt(3)) + methodName.substring(4);

}

} else if (c3 == '_') {

propertyName = methodName.substring(4);

} else if (c3 == 'f') {

propertyName = methodName.substring(3);

} else {

continue;

}

}

// 在com

java 命名规范 json大小写_JSON.toJSONString会把key的首字母转成小写相关推荐

  1. java标签组件命名_java编程规范之java命名规范

    想要成为一个优秀的程序员,首先要培养良好的编程习惯,为了提高代码的可读性,必须有好的命名规范. 这篇文章是小编结合网上的很多资料整理出来的,若有不当或错误的地方,欢迎大家指正 在文章开始前,为方便阅读 ...

  2. fastjson转换json字符串key的首字母小写变大写的解决办法

    问题描述 在开发过程中,由于接口文档的描述,要求json字符串的key首字母为大写,而java 的规范要求在定义bean的时候,成员属性是首字母小写的驼峰格式,java的基本规范一定要遵守,否则会出现 ...

  3. Java 命名规范(非常全)

    欢迎关注方志朋的博客,回复"666"获面试宝典 在本文中,将从大到小,从外到内,总结Java编程中的命名规范.文中将会涉及到日常工作中常见的命名示例,如包命名,类命名,接口命名,方 ...

  4. Java 命名规范(非常全面)

    来源:https://www.ramostear.com/blog/2020/03/20/2vxdaqjq.html 最近发现很多初级程序员写代码时很不规范,比如方法名 类名 等,如果遇到有代码洁癖的 ...

  5. 修炼成高薪Java程序猿——从优秀的Java命名规范开始

    优秀的Java命名规范 1命名规范 1.1 package (*)  包名全部由小写的ASCII字母组成,用"."分隔.  在此项目中,所有的包均以"com.proste ...

  6. Java命名规范--阿呆

    最近发现很多初级程序员写代码时很不规范,比如方法名 类名 等,如果遇到有代码洁癖的领导肯定会被骂(什么垃圾代码),下面分享一篇不错的规范文章 在本文中,将从大到小,从外到内,总结Java编程中的命名规 ...

  7. Java命名规范和代码风格

    Java命名规范和代码风格 基本命名规范 包命名 包名按照域名的范围从大到小逐步列出,恰好和Internet上的域名命名规则相反. 由一组以"."连接的标识符构成,通常第一个标识符 ...

  8. 访问控制权限和 ------java命名规范

    java中一共存在4中访问控制权限, 1.private 私有权限 2.default 默认访问权限 3.protected 属于受保护的访问权限.一个类中的成员如果使用了protected访问权限, ...

  9. 关于java变量命名,介绍阿里JAVA命名规范及IDEA实时检测插件的使用以及CODELF取名神器

    JAVA开发中,我们经常会为如何来命名烦心. 有大神曾说计算机科学的两件难事:缓存失效和命名 的确,程序员最头疼的事:命名 但其实,有规范可以遵循.还有工具帮我们取名,更有插件帮我们实时检查是否违反规 ...

最新文章

  1. oracle win10家庭版,Windows10远程报错:由于CredSSP加密Oracle修正(ps:Win10家庭版)
  2. git svn 一个疯(傻)子的想法
  3. Matlab 训练深度学习模型函数 trainingOptions
  4. Linux下Git和GitHub使用方法总结(Ubuntu16.04)
  5. gunicorn 配置日志
  6. [MyBatis]DAO层只写接口,不用写实现类
  7. TensorFlow入门:第一个机器学习Demo
  8. wine: Unhandled page fault on read access to 0x00000000 at address 0x10b1fb8
  9. Hibernate提高性能的几点建议
  10. 通过生日查询各年龄段数量通过饼状图显示
  11. 用EZBOOT制作多个gho文件的安装盘
  12. 记一次zookeeper连接数暴增事件
  13. 为热门项目 若依(ruoyi) 添加flyway,自动管理数据库版本
  14. 达奇机器人怎么看电量_圣诞怎么过?看看电影吃点儿特别的
  15. CentOS 7 安装EOS 并启动钱包
  16. Java图像处理——美颜相机项目核心
  17. 常用颜色名称与RGB数值对照表
  18. 魔兽世界燃烧的远征服务器状态,魔兽世界燃烧的远征前夕补丁 燃烧的远征副本介绍...
  19. PyCrypto —— 一个极好的信息安全python库
  20. 10UEC++吃豆人[吃超级豆子和改变游戏状态]

热门文章

  1. m软件接收机中同步技术以及LMS-RLS自适应均衡技术的matlab仿真
  2. fopen_s 函数使用及成功读取txt但不能写入的问题解决
  3. C++11_学习笔记
  4. Office365学习笔记—Xslt自定义列表视图
  5. 为什么越来越多的企业申请ISO20000认证
  6. 鼠标移动添加七彩泡泡效果
  7. 计算机怎样连接硬盘,台式机硬盘如何接笔记本【方法步骤】
  8. Fidder Everywhere 下载和安装教程
  9. 电子表格控件 在线演示
  10. The following paths are ignored by one of your .gitignore files