JOSN数据转换和解析

news2024/11/20 14:15:14

文章目录

  • JOSN数据转换和解析
    • 内容回顾
    • Map 集合转成 JSON 字符串
    • List 集合转换成 JSON 字符串
    • Ajax 异步和同步
      • 异步概念
      • 同步概念
      • 异步和同步区别
      • 异步请求案例
      • 同步请求
    • 时间格式化
      • 旧时间 api 格式化
      • 格式化和解析的工具类
      • JSTL 时间格式化
      • JSTL 使用


JOSN数据转换和解析

内容回顾

ajax 异步请求

格式:
$.ajax({
url:"请求地址",
data:{},
type:"post/get",
async:true/false,
dataType:"text/json",
success:function(obj){ },
error:function(){}
})
$.post/get(
"请求地址",
{key:value,key:value}
function(obj){}
"text/json"
)

json

① json 对象
格式:{key:value,key:value}
json 对象.key --- 获取 value 值
② json 数组
格式:[元素,元素,元素,······]
json 数组[索引] -- 获取元素
③ 对象数组混合格式
格式:{[]} --- 对象数组
json 对象.key[索引] -- 获取对象数组中的值
[{}] --- 数组对象
json 数组[索引].key -- 获取数组对象中的值

Jackson 工具

Jackson 工具需要 3 个依赖包:jackson-databind,jackson-core,jacksonannotations;
① 对象转成 json 字符串
a. 创建 ObjectMapper 对象
b. 使用 ObjectMapper 对象提供的 writeVlaueAsString(object)
c. 将 json 字符响应给页面

Map 集合转成 JSON 字符串

Servlet

在这里插入图片描述

servlet 响应的结果

在这里插入图片描述

dao 层数据封装

在这里插入图片描述

jsp 页面

在这里插入图片描述

List 集合转换成 JSON 字符串

servlet 类

在这里插入图片描述

service 层

在这里插入图片描述
在这里插入图片描述

dao 层

在这里插入图片描述

在这里插入图片描述

jsp 页面

在这里插入图片描述

在这里插入图片描述

Ajax 异步和同步

异步概念

在同一个 jsp 页面中,可以存在多个 ajax,所有的 ajax 在进行请求发送时,没有固定
的先后顺序,并发执行的;

同步概念

多个请求有明显的先后顺序,按照 jsp 页面中书写的先后顺序执行;

异步和同步区别

在异步请求发送的时候,如果在某一个请求中需要另一个一个请求中的数据,此时不能保证一
定能够获取;
同步请求时,后一个请求一定能够获取前一个请求中的数据;
同步和异步都是使用请求中的属性:async,将其值设置为 true 时,表示异步;设置为
false 表示同步;

异步请求案例

jsp 页面

在这里插入图片描述

执行结果

在这里插入图片描述

在这里插入图片描述

小结

从执行结果中可以看出,异步请求不是按照书写的先后顺序执行的; 如果想要请求按照先后顺序执行,那么就需要将请求设置为同步;

同步请求

在这里插入图片描述

时间格式化

旧时间 api 格式化

项目中用来表示日期类型如果是 java.util.Date 类型,那么在进行时间显示时需要使用
SimpleDateFormat 进行时间的格式化;
① 创建 SimpleDateFormat 对象
② 使用 format 方法进行格式化
同理有的时候也需要进行字符串解析为时间格式,使用 parse 方法

格式化和解析的工具类

在这里插入图片描述

使用工具类进行格式化,需要在查询或者添加数据时对数据先进行格式化或者或者解析,再进
行数据操作;使用起来相对麻烦;
建议使用 JSTL 提供的格式化工具进行时间格式化;

JSTL 时间格式化

引入 JSTL 的核心标签库和格式化工具
在这里插入图片描述

JSTL 使用

在这里插入图片描述

servlet 类
在这里插入图片描述

dao 层

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/388040.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

指针的进阶续(笔试题强化练习)

写在前面:在上次我们学习了指针的相关类型的知识,对指针家族的成员基本有了了解,这次让我们跟着一些题目来练习和补充一些知识,这有助于我们强化理解这些知识。 话不多说,我们马上开始: 1.指针和数组的笔…

Vue基础学习 第一个Vue程序 el挂载点 v-指令(1)

Vue简介 Vue是一个Javascript框架Vue框架可以简化Dom操作响应式数据驱动 : 页面是由数据生成的,当数据出现改动,页面也会即时改变 第一个Vue程序 Vue中文文档官网:https://v2.cn.vuejs.org/v2/guide/ 根据官方文档的说法&#…

缓存与数据库的双写一致性

背景 在高并发的业务场景下,系统的性能瓶颈往往是出现在数据库上,用户并发访问过大,压力都打到数据库上。所以一般都会用redis做缓存层,起到一个缓冲作用,让请求先访问到缓存层,而不是直接去访问数据库&am…

Web3D发展趋势以及Web3D应用场景

1,Web3D发展趋势随着互联网的快速发展,Web3D技术也日渐成熟,未来发展趋势也值得关注。以下是Web3D未来发展趋势的七个方面:可视化和可交互性的增强:Web3D可以为三维数据提供可视化和可交互性的增强,将极大地…

CCNP350-401学习笔记(补充题目101-186)

101、 enable the https service 102、fabric edge node 103、 104、 105、 16113 106、filter access-group 10 107、 108、VETP 109、 110、 111、the server and the database can inititate communication 112、 113、 114、 115、 116、WAN edge&#xf…

【教程】去水印开源工具Lama Cleaner在Windows的安装和使用

一、Lama Cleaner是什么? Lama Cleaner是一款开源且免费的人工学习图片去水印程序(个人主要学习用途),没有图片分辨率限制(个人使用暂未发现),并且保存的图片质量很高(个人觉得跟原…

MSTP多进程讲解与实验配置

目录 MSTP多进程 专业术语 MSTP多进程配置 在MSTP域配置 MSTP多进程 多进程的作用 将设备上的端口绑定到不同的进程中,以进程为单位进行MSTP计算,不在同一进程内的端口不参与此进程中的MSTP协议计算,实现各个进程之间的生成树计算相互独立…

【算法】DFS与BFS

作者:指针不指南吗 专栏:算法篇 🐾题目的模拟很重要!!🐾 文章目录1.区别2.DFS2.1 排列数字2.2 n-皇后问题3.BFS3.1走迷宫1.区别 搜索类型数据结构空间用途过程DFSstackO( n )不能用于最短路搜索到最深处&a…

leetcode打卡-深度优先遍历和广度优先遍历

200.岛屿数量 leetcode题目链接:https://leetcode.cn/problems/number-of-islands leetcode AC记录: 思路:深度优先遍历,从0,0开始遍历数组,使用boolean类型数组used记录是否被访问过,进行一…

28个案例问题分析---014课程推送页面逻辑整理--vue

一&#xff1a;背景介绍 项目开发过程中&#xff0c;前端出现以下几类问题&#xff1a; 代码结构混乱代码逻辑不清晰页面细节问题 二&#xff1a;问题分析 代码结构混乱问题 <template><top/><div style"position: absolute;top: 10px"><C…

SpringBoot监听机制-以及使用

11-SpringBoot事件监听 Java中的事件监听机制定义了以下几个角色&#xff1a; ①事件&#xff1a;Event&#xff0c;继承 java.util.EventObject 类的对象 ②事件源&#xff1a;Source &#xff0c;任意对象Object ③监听器&#xff1a;Listener&#xff0c;实现 java.util…

奇思妙想:超链接唤起本地应用

文章目录分析实现参考很多人的博客都有这样的小玩意&#xff0c;点击之后就可以直接与博主进行对话&#xff0c;而且无需添加好友。 先研究一下网页源代码&#xff1a; <a href"tencent://message/?uin88888888&Siteqq&Menuyes">联系我</a>很明…

Decoupled Knowledge Distillation(CVPR 2022)原理与代码解析

paper&#xff1a;Decoupled Knowledge Distillationcode&#xff1a;https://github.com/megvii-research/mdistiller/blob/master/mdistiller/distillers/DKD.py背景与基于响应logits-based的蒸馏方法相比&#xff0c;基于特征feature-based的蒸馏方法在各种任务上的表现更好…

【教学典型案例】14.课程推送页面整理-增加定时功能

目录一&#xff1a;背景介绍1、代码可读性差&#xff0c;结构混乱2、逻辑边界不清晰&#xff0c;封装意识缺乏![在这里插入图片描述](https://img-blog.csdnimg.cn/bbfc5f04902541db993944ced6b62793.png)3、展示效果不美观二&#xff1a;案例问题分析以及解决过程1、代码可读性…

现代操作系统——Linux架构与学习

小白的疑惑 在我决定从事嵌入式&#xff08;应用层&#xff09;方面的工作时&#xff0c;我查询了大量资料该如何学习&#xff0c;几乎所有观点不约而同的都指向了学习好Linux&#xff0c;大部分工作都是在Linux环境下来进行工作的。于是我雄心勃勃的去下载Linux&#xff0c;可…

GEE开发之降雨(CHIRPS)数据获取和分析

GEE开发之降雨CHIRPS数据获取和分析1.数据介绍2.初识CHIRPS2.1 代码一2.2 代码二3.逐日数据分析和获取4.逐月数据分析和获取4.1 代码一4.2 代码二(简洁)5.逐年数据分析和获取5.1 代码一5.2 代码二(简洁)前言&#xff1a;主要获取和分析UCSB-CHG/CHIRPS/DAILY的日数据、月数据和…

一文带你入门,领略angular风采(上)!!!

话不多说&#xff0c;上代码&#xff01;&#xff01;&#xff01; 一、脚手架创建项目 1.安装脚手架指令 npm install -g angular/cli 2.创建项目 ng new my-app(ng new 项目名) 3.功能选择 4.切换到创建好的项目上 cd my-app 5.安装依赖 npm install 6.运行项目 npm start或…

32 openEuler使用LVM管理硬盘-管理卷组

文章目录32 openEuler使用LVM管理硬盘-管理卷组32.1 创建卷组32.2 查看卷组32.3 修改卷组属性32.4 扩展卷组32.5 收缩卷组32.6 删除卷组32 openEuler使用LVM管理硬盘-管理卷组 32.1 创建卷组 可在root权限下通过vgcreate命令创建卷组。 vgcreate [option] vgname pvname ...…

曹云金郭德纲关系迎曙光,新剧《猎黑行动》被德云社弟子齐点赞

话说天下大势&#xff0c;分久必合&#xff0c;合久必分。这句话经过了历史的证明&#xff0c;如今依然感觉非常实用。 就拿郭德纲和曹云金来说&#xff0c;曾经后者是前者的得门生&#xff0c;两个人不但情同父子&#xff0c;曹云金还是郭德纲默认接班人。然而随着时间的流逝&…

数据库基本概念及常见的数据库简介

数据库基本概念 【1】数据库基本概念 &#xff08;1&#xff09;数据 所谓数据&#xff08;Data&#xff09;是指对客观事物进行描述并可以鉴别的符号&#xff0c;这些符号是可识别的、抽象的。它不仅仅指狭义上的数字&#xff0c;而是有多种表现形式&#xff1a;字母、文字…