Spring-MVC 整合JSON 实例

spring mvc学习(57):全局异常 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/... 阅读详情

今天在做springmvc的demo时,使用ajax.post 请求获取后端封装返回的json数据时一直报406错误,在查阅了大量的网站后,终于在stackoverflow上找到了解决方案

==============================================================================================================================

1.项目依赖配置

(注:这部分是相对于Maven项目来说的,如果不是Maven管理的项目,可以不理会这部分,直接把相关Sring包和Jackson包导入lib库即可。)

配置Jackson 和Spring依赖


	2.6.3



	com.fasterxml.jackson.core
	jackson-core
	${jackson-version}


	com.fasterxml.jackson.core
	jackson-databind
	${jackson-version}


	com.fasterxml.jackson.core
	jackson-annotations
	${jackson-version}

2.模型

一个简单的实体对象,将所有数据封装为统一结构,然后将会被转化为json格式数据输出。

/** 
 * 封装 返回Json 格式数据 
 *  
 * @author HASEE 
 * @since 2017-03-21 22:15:58
 **/  
  
public class JsonResult implements Serializable {  
    private static final long serialVersionUID = -4699713095477151086L;  
  
    /** 
     * 数据 
     */  
    private T data;  
    /** 
     * 信息 
     */  
    private String message;  
    /** 
     * 是否成功 
     */  
    private boolean success;  
  
    public Object getData() {  
        return data;  
    }  
  
    public void setData(T data) {  
        this.data = data;  
    }  
  
    public String getMessage() {  
        return message;  
    }  
  
    public void setMessage(String message) {  
        this.message = message;  
    }  
  
    public boolean isSuccess() {  
        return success;  
    }  
  
    public void setSuccess(boolean success) {  
        this.success = success;  
    }  
  
    public JsonResult() {  
        super();  
    }  
  
    public JsonResult(T data, String message, boolean success) {  
        this.data = data;  
        this.message = message;  
        this.success = success;  
    }  
  
    public JsonResult(T data, String message) {  
        this.data = data;  
        this.message = message;  
        this.success = true;  
    }  
  
    public JsonResult(T data) {  
        this.data = data;  
        this.success = true;  
    }  
}  

3.控制器

在方法名前面增加@ResponseBody注解。如果Spring发现

  1. 项目lib库中含有Jackson包
  2. Spring启用了 mvc:annotation-driven MVC注解配置
  3. 返回的方法使用了@ResponseBody注解

Spring 会自动进行JSON的转换。

控制器代码如下所示:

package com.lynn.blog.web;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.lynn.blog.common.JsonResult;
import com.lynn.blog.service.impl.UserServiceImpl;
import com.lynn.blog.vo.UserVO;

/**
 * 用户登陆控制层
 * 
 * @author HASEE
 * 
 */
@Controller
@RequestMapping("/userLogin")
public class UserLoginController {

	// 日志处理
	private final Logger log = LoggerFactory.getLogger(this.getClass());

	@Autowired
	private UserServiceImpl userServiceImpl;

	@RequestMapping(value = "/createLoginInfo", method = RequestMethod.POST, produces = { "application/json;charset=UTF-8" })
	public @ResponseBody JsonResult createLoginInfo(UserVO userVO) {
		log.info("---------------开始记录登陆日志");
		Integer flag = 0;
		if (null != userVO) {
			flag = userServiceImpl.createLoginInfo(userVO);
		}
		return new JsonResult(flag, "success",true);
	}

}

4. mvc:annotation-driven 注解

在Spring配置中启用 mvc:annotation-driven 注解




	
	
	
	
	

	
	

    

在其他配置正确的情况下即可将后端的数据封装为json返回给前端




Spring MVC 入门实例 概述: springmvc 框架围绕DispatcherServlet这个核心展开,DispatcherServlet是Spring MVC的总控制,它负责截获请求并将其分派给相应的处理器处理。SpringMVC框架包括注解驱动控制器、请求及响应的信息处理、视图解析、本地化解析、上传文件解析、异常处理以及表单标签绑定等内容。 SpringMVC是主要基于MODEL2实现的技术框架,Model2 阅读详情

相关推荐

Spring MVC与JSON交互整合指南

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript的一个子集。尽管JSON主要与JavaScript关联,但是它独立于语言并且是采用完全语言无关的数据模型。目前,JSON已经被大多数编程语言支持,成为数据交换的标准格式之一。JSON用于存储和传输数据,它采用键值对(key-value)的形式组织数据,以数组(array)和对象(object)的组合来表示数据。

weixin_29885875的博客 947

Spring MVC JSON数据交互(附带实例)

Spring MVC 在数据绑定的过程中需要对传递数据的格式和类型进行转换,它既可以转换 String 等类型的数据,也可以转换 JSON 等其他类型的数据。本节将针对 Spring MVC 中 JSON 类型的数据交互进行讲解。 JSON 概述 JSON(JavaScript Object Notation, JS 对象标记)是一种轻量级的数据交换格式。与 XML 一样,JSON 也是基于纯文本的数据格式。它有对象结构和数组结构两种数据结构。 1)对象结构 对象结构以“{”开始、以“}”结束,中间部分由

qq_44336097的博客 1833

springMVC json格式转换demo

此例子对应了springmvc json格式转换的小例子,其中前端请求后端的json,利用springmvc api完成的

springmvc对json数据处理

json数据为什么流行,因为json格式数据比较简单,更符合面向对象,在页面使用js解析json比较方便的。 springmvc对json支持 输入json数据好处:为了适应众多客户端请求,可以将请求的内容类型统一为json数据格式。 将请求结果以json格式输入好处:在页面使用js解析json比较方便 springmvc中通过@requestBody注解实现将json数据转成ja

bsw451926392的博客 1万+

Maven+springMVC+JSON实例

基于Maven搭建的springMVC+JSON实例,运行起来后在首页可见到访问地址.

Elsevier期刊LaTeX双栏模板(cas-dc)实战:从Overleaf配置到投稿全流程

本文详细介绍了Elsevier期刊LaTeX双栏模板(cas-dc)在Overleaf平台上的配置与使用全流程,包括模板结构解析、标题与作者信息规范、摘要与关键词特殊格式、正文写作技巧、参考文献管理以及投稿前检查清单。特别针对Elsevier期刊投稿需求,提供了从模板安装到最终投稿的实用指南,帮助研究者高效完成论文排版工作。

weixin_28455801的博客 1323

SpringMVC中JSON详解

SpringMVC中JSON详解 什么是JSON? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛。 采用完全独立于编程语言的文本格式来存储和表示数据。 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 在 JavaScript 语言中,一切都是对象。因此,任何JavaScript 支持的类型都可以通过 JSON 来表示,例如字符串、数字

qq_41359998的博客 779

AT89C52单片机+LCD屏:手把手教你做一个能算小数和负数的计算器(附完整代码)

本文详细介绍了如何使用AT89C52单片机和LCD1602显示屏构建一个支持小数和负数运算的高精度计算器。从硬件选型、系统架构设计到核心算法实现,提供了完整的代码示例和优化技巧,特别适合51单片机初学者和课程设计参考。

weixin_30374009的博客 368

Spring3 MVC 整合JSON 实例

原文链接:http://www.mkyong.com/spring-mvc/spring-3-mvc-and-json-example/ 这篇文章讲得很清楚,所以把他翻译一下,转载在我博客。

生活的真相 9385

Orange:一个基于 Python 的数据挖掘和机器学习平台

Orange是一个开源的数据挖掘和机器学习平台,采用可视化编程方式,用户可通过拖拽组件构建数据分析工作流。它支持交互式数据探索、多种机器学习算法,并允许Python脚本扩展。Orange特别适合教育和研究,提供直观的界面和丰富的可视化工具。最新版本为3.39.0,支持Windows、macOS和Linux系统。作为GPL许可的免费工具,它既能满足初学者需求,又能通过Python集成实现高级功能。

likuoelie的博客 1433

【鸿蒙南向开发】OpenHarmony——分布式数据对象之功能实践

通过本文的学习可了解到分布式数据对象的主要接口、大致调用方法和功能实现等。结合对应内容,可以进一步对分布式数据对象同步机制做深度学习。下一步,(1) 着重理解同步组网的构建原理。(2) 着重理解同步组网内,监听change和status变化的实现。●如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:●关注小编,同时可以期待后续文章ing🚀,不定期分享原创知识。

HarmonyOS_666的博客 1089

Spring MVC ,jqueryAJAX,Json三步整合实例 (转自趣友网)

快速预览:   1.首先在你的 springMVC servlet配置文件上面加上这个配置,让spring自动把你的对象转换成JSON对象                                                                                        tex

lesheng1989926的专栏 641

RealSense D435i深度相机实战:从像素坐标到三维空间的精准映射(Python实现)

本文详细介绍了使用RealSense D435i深度相机实现从二维像素坐标到三维空间坐标精准映射的两种Python实战方法:深度图反投影法与点云直接查找法。文章涵盖环境搭建、相机对齐、代码实现、性能对比及与YOLO等检测模型结合的进阶应用,并提供了关键的避坑指南和参数调优建议,帮助开发者在机器人、三维重建等项目中高效应用。

weixin_29291573的博客 382

spring mvc整合json

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34378922的博客 77

ROS机器人未知环境自主探索功能包explore_lite总结

本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_client.cpp等源码实现文件中全部函数的详细介绍,第六篇文章进行概括总结,包含自主探索功能包explore_lite的简介,实现未知环境自主探索功能的原理及流程总结,效果演示,使用功能包exp

慕羽★的博客 4460

Python爬虫实战:利用Playwright和反反爬技术高效抓取Bloomberg金融数据

用户行为分析(鼠标移动、点击模式)请求头检测IP频率限制WebSocket通信验证Canvas指纹识别我们的爬虫需要模拟人类行为,使用代理IP池,并合理控制请求频率。

2201_76125261的博客 1020

Spring MVC 教程详解 个人总结 复习必备 面试宝典 狂神笔记

文章目录一、MVC 设计模式 一、MVC 设计模式

super_song的博客 605

9、从统计到电路:未来物理不可克隆函数的基础

本文探讨了物理不可克隆函数(PUF)的关键技术,包括补偿环境影响、处理相关工艺变化、身份映射和测试方法。提出了一种基于新测试统计量Q的方法,有效提升了PUF的熵值和安全性。通过实验验证,新方法能够显著区分不同芯片,并增强PUF在不同环境下的适应性和可靠性,为未来PUF的设计与应用提供了重要基础。

pluto的博客 117

Spring+SpringMVC+mybatis+easyui整合实例-----spring mvc整合及mybatis事务部分

一、首先添加框架支持 添加jar包配置xml 因为我们要使用spring mvc做表现层,spring aop配置事务,所以要导入mvc、aop、tx相关的东西 0.0 添加支持后的applicationContext.xml: "http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.or

逸轩 1323

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

[转载]Spring3 MVC + jQuery easyUI 做的ajax版本用户管理

上周写了篇基于spring3.0.5 mvc 简单用户管理实例 ( http://www.iteye.com/topic/1072244 ) ,反应还不错,本周闲来无事(外面又在下 雨 淹了不少地方啊)就试了一下Spring3 MVC + jQuery easyUI 做的ajax版本用户管理,因为之前做过一个项目是struts2 + jQuery easyUI 做的。对比了一下,发现 Spring...

zzc1684的博客 166

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

spring mvc 环境搭建

web.xml  <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun

IT码农 677

Spring 与 MVC 框架整合思路

整合 MVCMVC 框架整合思想为什么要整合 MVC 框架搭建 Web 运行环境Spring 整合 MVC 框架的核心思路1. 准备工厂2. 代码整合Spring 整合 Struts2 MVC 框架整合思想 为什么要整合 MVC 框架 MVC 框架提供了控制器(Controller)调用 Servlet DAO —> Service 请求响应的处理 接收请求参数 request.getParameter("") 控制程序的运行流程 视图解析(JSP、JSON、Freemarker、Thymeleaf

萌宅鹿的技术小屋 2098

Spring 整合MVC框架

MVC框架整合思想 Ⅰ. 为什么要整合MVC框架 1. MVC框架提供了控制器(Controller)调用Service DAO => Service 2. 请求响应的处理 3. 接受请求参数 request.getParameter("") 4. 控制程序的运行流程 5. 视图解析(JSP JSON Freemarker Thyemeleaf) SpringMVC和Spring整合目的:分工明确 SpringMVC的配置文件就来配置和网站转发逻辑以及网站功能有关的(视图解析器,拦截器,文件上传解析器).

How many ten years in the life time? 553

Spring MVC、Spring 与 MyBatis 整合详解

本文详细解析了Spring、Spring MVC和MyBatis(SSM)框架的整合应用。通过分层架构设计,Spring负责组件管理与依赖注入,Spring MVC处理HTTP请求响应,MyBatis实现数据持久化。文章剖析了SSM的核心职责、整合流程及关键配置,包括数据源设置、事务管理和组件扫描策略,并指出常见配置问题及改进建议。总结强调SSM通过清晰的职责分工和依赖注入机制,实现高内聚低耦合,提升系统可维护性。理解三者的协作关系有助于快速定位配置错误并优化代码结构。

xiaoyu070321的博客 903

Spring——MVC框架整合

Spring——MVC框架整合 第一章 MVC框架整合思想 1.1 搭建WEB运行环境 <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <dependency&gt

weixin_46932548的博客 246
上一篇: 如何在maven工程中加载oracle驱动
下一篇: web.xml详解以及其中的listener、 filter、servlet 加载顺序
simon-hacker
博客等级 码龄12年 4粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值