基于Spring和Vue的Json应用

基于Spring和Vue的Json应用

一、Java后台的json字符串转化

应用场景:

  • ·json字符串转List/Object: 数据库中字段存储json字符串,或者接受前台的json字符串,按需转为实体类,插入分表
    • · List/Object转json字符串: 查表后转化为json字符串传递给前台,或者插入总表中存储字符出的字段

注:Array和Object使用语法存在差异

1、json字符串转List/Object

(1)jsonArray

字符串样式:{"属性1": value1, "属性2":value2}, {"属性1": value3, "属性2":value4},

属性可包含jsonArray

java 复制代码
public class FactoryCheckPlanItemJson {
    private Long id;
    private Long checkContents;
    private String answer;
    private List<Item> item;
}
String checkItemJsonString = "[\"id\":1,\"checkContent\":\"检查\",\"answer\":\"A\",\"item\":\"[{\"A\",\"health\"\"},{\"B\",\"unhealth\"\"}]\"]"//获取所有点位   使用json转换为任务项类型
List<FactoryCheckPlanItemJson> factoryCheckPlanItemsJson = JSON.parseArray(checkItemJsonString).toJavaList(FactoryCheckPlanItemJson.class);

(2) jsonObject

字符串样式:{"属性1": value1, "属性2":value2}

java 复制代码
List<FactoryCheckPlanItemJson> factoryCheckPlanItemsJsonList = mapper.select(); 

String checkItemJsonString = JSONObject.toJSONString(factoryCheckPlanItemsJsonList);

2、List/Object转json字符串

// 适用于普通实体类和List

java 复制代码
FactoryCheckPlanItemJson a = new FactoryCheckPlanItemJson();

JSONObject.toJSONString(factoryCheckPlanItemsJsonList)

二、Vue前台的json转化

应用场景:

·前台对后台传递的json字符串解析为object用于展示

·前台的表单为object, 提交后转化为json字符串传递到后台

注:Array和Object使用语法一样

1、jsonString转实体类

JSON.parse(jsonString)

Eg:

javascript 复制代码
let questionOptions = []
if (response.data.checkItem) {
  let tmp = JSON.parse(row.checkItem);
  for (let key in tmp) {
    let a = {
      option: key, content: tmp[key]
    }
    questionOptions.push(a);
  }
  return questionOptions
}

2、实体类转jsonString

javascript 复制代码
JSON.stringfy(list)

JSON.stringfy(object)
相关推荐
Highcharts.js10 小时前
Highcharts 主流前端框架无缝集成指南
前端·vue.js·前端框架·highcharts·可视化图表
城管不管11 小时前
MySQL 慢查询完整排查
java·服务器·jvm·数据库·mysql·spring·面试
岁岁种桃花儿11 小时前
Vue核心语法第十一篇:绑定样式
前端·javascript·vue.js
风流 少年20 小时前
Spring AI 2.0:Memory
java·后端·spring
2603_9651481120 小时前
如何解析JSON数据?API返回的商品信息处理教程
开发语言·数据库·python·自动化·json·api
Java成神之路-1 天前
Spring Cloud 微服务契约先行:为什么 Controller 建议要实现 Feign 接口?
spring·spring cloud·微服务
Flittly1 天前
【雕虫大技】Agent 动态 Skill 供应链安全加固(三):输出校验与治理闭环实战
java·spring boot·spring
大龄码农有梦想1 天前
Vue + BPMN.js + Camunda:搭建企业级流程设计器完整实践
javascript·vue.js·流程设计器·bpmn.js·bpmn·流程审批·工作流设计器
风流 少年1 天前
Spring AI 2.0:MCP
java·后端·spring
鬼手点金1 天前
Scrapy 网络爬虫框架
爬虫·python·scrapy·ajax·html·json·requsts