当前位置: 首页 > news >正文

JOSN数据转换和解析

文章目录

  • 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.lryc.cn/news/28829.html

相关文章:

  • 浅析Linux内核中进程完全公平CFS调度
  • 安装 RustDesk 服务器 (适用 Rocky Linux, CentOS, RHEL 系列发行版)
  • 23种设计模式-策略模式
  • C#开发的OpenRA的游戏主界面怎么样创建
  • 考研还是工作?两战失败老道有话说
  • 引用是否有地址的讨论的
  • 1、JAVA 开发环境搭建 - JDK 的安装配置
  • 【Storm】【六】Storm 集成 Redis 详解
  • 算法代码题——模板
  • CentOS 7.9汇编语言版Hello World
  • CoreData数据库探索
  • FreeRTOS入门
  • JVM运行时数据区划分
  • 重装系统一半电脑蓝屏如何解决
  • SpringBoot(tedu)——day01——环境搭建
  • springboot整合redis
  • 【Java】Spring Boot下的MVC
  • 【项目精选】 塞北村镇旅游网站设计(视频+论文+源码)
  • 十、Spring IoC注解式开发
  • Linux系统GPIO应用编程
  • 手敲Mybatis-反射工具天花板
  • Java -数据结构,【优先级队列 / 堆】
  • Python+Qt指纹录入识别考勤系统
  • K_A14_004 基于STM32等单片机驱动旋转角度传感器模块 串口与OLED0.96双显示
  • 2023年全国最新机动车签字授权人精选真题及答案12
  • Linux小黑板(10):信号
  • GO 语言基础语法一 (快速入门 Go 语言)
  • Java高效率复习-SpringMVC[SpringMVC-2]
  • 【前端】一个更底层库-React基础知识点
  • C++ 之枚举类型