实现单层json按照key字母顺序排序的示例


Posted in Javascript onDecember 06, 2017

最近在做银行项目时遇到一个问题:银行加签名数据必须按照顺序排好,再拼接后加签名,这时候就遇到问题,如何实现JSONObject对象中key-value按照key进行排序;

实现代码如下:

<span style="font-size:18px;">import java.util.Iterator; 
import java.util.SortedMap; 
import java.util.TreeMap; 
import net.sf.json.JSONObject; 
public class JsonUtils { 
 /** 
  * 对单层json进行key字母排序 
  * @param json 
  * @return 
  */ 
 public static JSONObject getSortJson(JSONObject json){ 
  Iterator<String> iteratorKeys = json.keys(); 
  SortedMap map = new TreeMap(); 
  while (iteratorKeys.hasNext()) { 
    String key = iteratorKeys.next().toString(); 
    String vlaue = json.optString(key); 
    map.put(key, vlaue); 
  } 
  JSONObject json2 = JSONObject.fromObject(map); 
  return json2; 
 } 
public static void main(String[] args){ 
  JSONObject json = new JSONObject(); 
  json.put("cc", "cc"); 
  json.put("bb", "bb"); 
  json.put("ee", "ee"); 
  json.put("aa", "aa"); 
  json.put("ba", "ba"); 
  json.put("bd", "bd"); 
  System.out.println(getSortJson(json).toString()); 
 } 
}</span>

以上这篇实现单层json按照key字母顺序排序的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js闭包的用途详解
Nov 09 Javascript
jQuery实现自动滚动到页面顶端的方法
May 22 Javascript
Js和JQuery获取鼠标指针坐标的实现代码分享
May 25 Javascript
动态加载jQuery的两种方法实例分析
Jul 17 Javascript
JS代码实现table数据分页效果
May 26 Javascript
js正则表达式惰性匹配和贪婪匹配用法分析
Dec 26 Javascript
RequireJs的使用详解
Feb 19 Javascript
基于jquery日历价格、库存等设置插件
Jul 05 jQuery
vue Render中slots的使用的实例代码
Jul 19 Javascript
微信小程序上传图片到服务器实例代码
Nov 07 Javascript
基于Vue制作组织架构树组件
Dec 06 Javascript
JS字符串和数组如何实现相互转化
Jul 02 Javascript
Thinkjs3新手入门之如何使用静态资源目录
Dec 06 #Javascript
浅谈JsonObject中的key-value数据解析排序问题
Dec 06 #Javascript
Thinkjs3新手入门之添加一个新的页面
Dec 06 #Javascript
vue 实现 ios 原生picker 效果及实现思路解析
Dec 06 #Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
Dec 06 #Javascript
基于Vue2的独立构建与运行时构建的差别(详解)
Dec 06 #Javascript
js 两数组去除重复数值的实例
Dec 06 #Javascript
You might like
详细介绍:Apache+PHP+MySQL配置攻略
2006/09/05 PHP
PHP curl_setopt()函数实例代码与参数分析
2011/06/02 PHP
PHP文件大小格式化函数合集
2014/03/10 PHP
php session 写入数据库
2016/02/13 PHP
调用WordPress函数统计文章访问量及PHP原生计数器的实现
2016/03/21 PHP
Laravel 5.1 框架Blade模板引擎用法实例分析
2020/01/04 PHP
jQuery 各种浏览器下获得日期区别
2008/12/22 Javascript
ExtJS TabPanel beforeremove beforeclose使用说明
2010/03/31 Javascript
初窥JQuery(二)事件机制(2)
2010/12/06 Javascript
从零开始学习jQuery (四) jQuery中操作元素的属性与样式
2011/02/23 Javascript
jQuery的控件及事件(输入控件及回车事件)使用示例
2013/07/25 Javascript
禁用JavaScript控制台调试的方法
2014/03/07 Javascript
使用jQuery实现input数值增量和减量的方法
2015/01/24 Javascript
JS作为值的函数用法示例
2016/06/20 Javascript
微信JS-SDK坐标位置如何转换为百度地图坐标
2016/07/04 Javascript
js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能
2018/01/09 Javascript
vue-scroller记录滚动位置的示例代码
2018/01/17 Javascript
vue+axios实现post文件下载
2019/09/25 Javascript
python实现DES加密解密方法实例详解
2015/06/30 Python
Python环境搭建之OpenCV的步骤方法
2017/10/20 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
Python-Seaborn热图绘制的实现方法
2019/07/15 Python
Django 拆分model和view的实现方法
2019/08/16 Python
Django限制API访问频率常用方法解析
2020/10/12 Python
全球领先的鞋类零售商:The Walking Company
2016/07/21 全球购物
意大利奢侈品网站:Italist
2016/08/23 全球购物
初婚未育证明
2014/01/15 职场文书
《小池塘》教学反思
2014/02/28 职场文书
俄语专业毕业生求职信
2014/07/12 职场文书
2015年招聘工作总结
2014/12/12 职场文书
古诗之感恩老师
2019/10/24 职场文书
教你怎么用python实现字符串转日期
2021/05/24 Python
pandas提升计算效率的一些方法汇总
2021/05/30 Python
Redis高并发防止秒杀超卖实战源码解决方案
2021/11/01 Redis
Vue OpenLayer测距功能的实现
2022/04/20 Vue.js
使用Redis实现分布式锁的方法
2022/06/16 Redis