一、准备工作

1.1 建立SpringBoot项目

使用IntelliJ IDEA建立SpringBoot项目,引入Lombok 和Web两个依赖。

1.2 确定项目目录结构

项目目录结构如下图,需要注意的是前端资源放在static文件夹下:

二、代码

2.1 后端代码

2.1.1 控制层

JsonController.java

package com.cloudpig.ajaxjson.controller;import com.cloudpig.ajaxjson.pojo.Department;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;@RestController
@RequestMapping("json")
public class JsonController {@GetMapping("object")public Department getDepartment() {return getDepartment("HR", "人力资源部");}@GetMapping("list")public List<Department> getDepartments() {ArrayList<Department> departments = new ArrayList<>();departments.add(getDepartment("HR", "人力资源部"));departments.add(getDepartment("HR", "人力资源部"));departments.add(getDepartment("HR", "人力资源部"));return departments;}private Department getDepartment(String id, String name) {Department department = new Department();department.setId(id);department.setName(name);return department;}@GetMapping("map")public Map<String, String> getMap() {Map<String, String> map = new HashMap<>();map.put("HR", "人力资源部");map.put("IT", "信息技术部");map.put("PD", "采购部");return map;}
}

2.1.2 实体类

Department.java

package com.cloudpig.ajaxjson.pojo;import lombok.Data;@Data
public class Department {private String id;private String name;}

2.2 前端代码

index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>AJAX测试</title><script src="js/jquery-3.3.1.min.js" type="text/javascript"></script><script src="js/ajax.js" type="text/javascript"></script>
</head>
<body><input id="getObject" type="button" value="获取对象"><input id="getList" type="button" value="获取集合"><input id="getMap" type="button" value="获取键值对">
</body>
</html>

ajax.js

$(function () {$('#getObject').click(function () {console.log("---获取对象---")$.ajax({method: "GET",url: "/json/object",success: function (department) {console.log(department.id);console.log(department.name);}});});$('#getList').click(function () {console.log("---获取集合---")$.ajax({method: "GET",url: "/json/list",success: function (list) {$.each(list, function (index, department) {console.log("index = " + index);console.log(department.id);console.log(department.name);});}});});$('#getMap').click(function () {console.log("---获取键值对---")$.ajax({method: "GET",url: "/json/map",success: function (map) {$.each(map, function (key, value) {console.log(key);console.log(value);});}});})
});

三、测试

分别点击三个按钮,在Chrome浏览器的开发者工具中观察打印数据。

锋利的JQuery:Ajax方法获取后端Json数据(Object、List、Map)并遍历相关推荐

  1. ajax仿百度搜索效果,利用autocomplete.js实现仿百度搜索效果(ajax动态获取后端[C#]数据)...

    实现功能描述: 1.实现搜索框的智能提示 2.第二次浏览器缓存结果 3.实现仿百度搜索 * { margin: 0px; padding: 0px; } #wrapper { height: 100% ...

  2. jQuery通过ajax方法获取json数据不执行success的原因及解决方法

    1.jquery通过ajax方法获取json数据不执行success回调 问题描述:jquery通过ajax方法获取json数据不执行success回调方法 问题原因:json格式存在问题或不符合标准 ...

  3. jquery通过ajax方法获取json数据不执行success

    1.jquery通过ajax方法获取json数据不执行success回调 问题描述:jquery通过ajax方法获取json数据不执行success回调方法 问题原因:json格式存在问题或不符合标准 ...

  4. jquery ajax 不执行success,jQuery通过ajax方法获取json数据不执行success的原因及解决方法...

    1.jquery通过ajax方法获取json数据不执行success回调 问题描述:jquery通过ajax方法获取json数据不执行success回调方法 问题原因:json格式存在问题或不符合标准 ...

  5. 用JQuery中的Ajax方法获取web service等后台程序中的方法

    用JQuery中的Ajax方法获取web service等后台程序中的方法 1.准备需要被前台html页面调用的web Service,这里我们就用ws来代替了,代码如下: using System; ...

  6. jquery封装的ajax方法获取web服务器时间

    解决方案: Ajax HTTP Head法 原理: 一般服务器在发送静态页面的时候(apache, nginx, lighttpd就目前所知)都是会在 HTTP 头里带一个Date的头信息的,那么我用 ...

  7. 再谈Jquery Ajax方法传递到action

    之前写过一篇文章Jquery Ajax方法传值到action,本文是对该文的补充. 假设 controller中的方法是如下: public ActionResult ReadPerson(Perso ...

  8. jq封装接口ajax,jquery ajax方法封装及api文件设计的代码示例

    本篇文章给大家带来的内容是关于jquery ajax方法封装及api文件设计的代码示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 封装 jquery ajax 文件/** * 封 ...

  9. ajax json 渲染 html,jQuery+Ajax+js实现请求json格式数据并渲染到html页面操作示例

    本文实例讲述了jquery+ajax+js实现请求json格式数据并渲染到html页面操作.分享给大家供大家参考,具体如下: 1.先给json格式的数据: [ {"id":1,&q ...

最新文章

  1. OpenGL和D3D的区别
  2. Java设计模式——装饰者模式
  3. 远程办公从学习开始,潜伏在家,技术如何逆袭?
  4. matlab 如何hidden,Matlab基本函数-hidden函数
  5. JDK 9中已弃用Java的Observer和Observable
  6. java 电梯算法_编程之美之小飞的电梯调度算法(多种解法)---Java语言
  7. Spring Boot(20)---开发Web应用之JSP篇
  8. 【算法】剑指 Offer 50. 第一个只出现一次的字符
  9. python new_python __new__中单例的作用
  10. php判断浏览器和语言
  11. openGL超级宝典第七版
  12. java 命名规则_java中命名规范
  13. 黄山IE修复专家免费版 v9.3
  14. mysql怎么解析json字符串_mysql解析json字符串
  15. 桌面图标有蓝底怎么去掉?
  16. gsoap linux中文乱码,gsoap中文乱码及内存清理等问题的解决方案
  17. css 实现心形加载动画
  18. JNI中创建新的线程回调java方法的技巧
  19. 全基因组选择-GS的技术评估
  20. 洛谷P2336 喵星球上的点名

热门文章

  1. 手机上支付宝沙箱环境安装
  2. Spark使用UDF函数之WordCount实现
  3. 罗曼冲牙器W6维修记录
  4. JAVA获取当前时间的三种方法
  5. Android移动应用开发学习——简单实现视频新闻APP
  6. Ichimoku Kinko Hyo
  7. 【Python爬虫】爬取英雄联盟所有皮肤图片实现千图成像~
  8. React 之 简易实现 Fiber架构
  9. 用RTKLIB中的rtkpost进行ppp和spp定位(附用CUI rnx2rtkp 编译)
  10. VBA—EXCEL操作集合—06