springboot如何返回中文json,保证顺序。LinkedHashMap应用实例

在业务中有时候需要中文json去进行映射到有些UI上,而springboot都是英文字段

java 复制代码
    //通过id查询消火栓的基本信息和检测值给POI
    @GetMapping("/queryPOIForHydrant")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "查询所需要的消火栓数据渲染给POI", notes = "传入id")
    public R queryPOIForHydrant(@RequestParam(value = "id", required = true) String id) {

        //先查询阀门的基本信息
        QueryWrapper<HydrantInformationEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.lambda().eq(HydrantInformationEntity::getHydrantId, id);
        HydrantInformationEntity detail = hydrantInformationService.getOne(queryWrapper);
        Map<String, Object> resultMap =  new LinkedHashMap<>();;
        if (detail != null) {
            resultMap.put("消火栓编号", detail.getHydrantId());
            resultMap.put("地址", detail.getRegion());
            // 根据实际Entity属性继续添加转换逻辑
            // 注意:这里的中文字段和实体类的属性需要根据实际情况对应修改
        }
        return R.data(resultMap);

    }

希望在转换成JSON时保持Map中元素的顺序,可以考虑使用LinkedHashMap代替HashMapLinkedHashMap内部维护了一个双向链表,可以保持元素插入的顺序。这意味着当您遍历Map或将其转换成JSON时,元素的迭代顺序将会是它们插入顺序。

相关推荐
程序员cxuan8 小时前
DeepSeek-V4-Flash 正式版来了!这次提升有点夸张。
人工智能·后端·程序员
小杍随笔10 小时前
2025年Rust GUI框架实战万字避坑指南
开发语言·后端·rust
geovindu10 小时前
CSharp: LogHelper
开发语言·后端·c#·.net
fliter11 小时前
Go设计取舍之一: goroutine 为什么保持匿名、无状态
后端
fliter11 小时前
Go设计取舍之二: maps.Keys和Values为什么返回迭代器
后端
热心市民lcj11 小时前
Spring Boot 整合 Caffeine 本地缓存实战
spring boot·后端·缓存
Revolution6111 小时前
Nest.js 是什么:怎样用它写出第一个后端接口
后端·node.js·nestjs
aiopencode11 小时前
SwiftUI Introspect生产环境完全指南:为什么它是安全可靠的选择
后端·ios
shengjk111 小时前
x86架构发展史:从8086到x86-64,一文看懂40多年CPU指令集如何改变世界
后端
天丁o12 小时前
Spring Boot + MyBatis Plus 考勤日报统计报表:打卡记录聚合、异常分类和明细下钻 Demo
spring boot·mybatis plus·企业数字化·考勤系统·报表统计