ajax前台传json到后台解析的方法以及注意事项-程序员宅基地

技术标签: 前台后台数据传递  

首先,如果是maven工程的话,需要在pom.xml文件中添加下方依赖

<dependency>
            <groupId>net.sf.json-lib</groupId>
            <artifactId>json-lib</artifactId>
            <version>2.4</version>
            <classifier>jdk15</classifier>
        </dependency>
        <!-- json解析包 -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.5.2</version>
        </dependency>

        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.5.2</version>
        </dependency>

如果是普通java,只要导入相关包即可

 

前台ajax:

var data={"data":"哈哈"};

$.ajax({
            type:"post",
            contentType:"application/json;charset=UTF-8",//一般报415错误都是没设置这个
            headers:{"Content-Type":"application/json;charset=UTF-8"},
            url:"${pageContext.request.contextPath}/admin/tests",
            data:JSON.stringify(data),//如果没有转为json字符串,可能会报400错误
            dataType:"json",
            success:function(data){
                alert(data);
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                 alert(XMLHttpRequest.status+"d"+XMLHttpRequest.readyState+"d"+errorThrown);
            }
        })

后台接收:

@RequestMapping(value="tests",method = {RequestMethod.POST })
    @ResponseBody 
    public String tests(@RequestBody JSONObject data){
        String majorID=data.getString("data");

        system.out.println(majorID);
        return "null";
    }

前台提交2:

 //也可以data:$("表单").serialize()来进行提交,这样子的话后台直接新建一个跟表单一样的实体类即可

对应的后台接收2:

@RequestMapping(value="tests",method = {RequestMethod.POST })
 @ResponseBody 
  public String tests(@RequestBody User user){

//自己新建一个跟表单一样类,属性跟表单的name一样即可自动赋值上去

}

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43677767/article/details/85041200

智能推荐

VS2017-主题样式_vs2017 好看主题-程序员宅基地

根据自己的喜好,配置了一下VS的主题样式,有很多不足百度网盘下载:https://pan.baidu.com/s/1Kn9ILkAX-4eB0enV0wTeYw 提取码:34nkcsdn:https://download.csdn.net/download/qq_37988830/11473851(有积分的可以支持下,谢谢)效果图:..._vs2017 好看主题

MTK 功能机 MMI绘画-程序员宅基地

MMI架构及基础知识MMI全称Man Macheine Interface(人机接口或人机界面)。人机界面分为文件界面(如DOS)和图形界面(如Windows)两种类型,功能机的平台属于简单的图形界面。下图为我们MMI简洁架构图 最上层的Application Layer在MMI基础中已经详细介绍,我们通常要做的也就是这一层的开发。Application Layer往下就是平台的图形子系统,图形子

mysql ERROR 1045 (28000): 错误解决办法_mysqlerror1045 28000-程序员宅基地

参考之前的博客:https://blog.csdn.net/qq_21237549/article/details/104799098找了各种发现都不行,各种初始化各种操作都不行,最后把原来的mysql-8.0.20删除,重新下载了一个最新的mysql-8.0.25-winx64之后按步骤重新配置,就可以了..._mysqlerror1045 28000

tesseract-ocr 提高验证码识别率手段之---识别码库训练方法-程序员宅基地

关于ORC验证码识别可以看本博客的另一篇文章常用的两种ORC 验证码 识别方法及实践感言 本文是对tesseract-ocr 使用的进一步技术升级说明,使用默认的识别库识别率比较低怎么办?不用着急,tesseract-ocr本身的工具中提供了使用你提供的素材进行人工修正以提高识别率的方法。下面我们就来看一下。 参考:http://my.oschina.net/li

HDU 1257 最少拦截系统-程序员宅基地

有一种导弹拦截系统,每次只能发射比前一发导弹低的炮弹,给定一些导弹的袭击顺序,求至少需要多少导弹拦截系统来完全阻止

随便推点

telnet Connection refused 端口不通处理_端口refused_liuy5277的博客-程序员宅基地

telnet 不通1. 防火墙屏蔽,iptables等放开端口处理2. 没有启用对应端口的侦听,需有侦听进程,通过netstat -tlpn查看是否有侦听。如没有,可通过nc 启用侦听后再telnet没有启用8080端口,使用nc -lp 8080 & 命令开启8080的tcp侦听,在端口启用列表里面能找到了,再telnet就通了,说明8080端口正常可用。..._端口refused

使用.NET 2.0中的秒表-Stopwatch类进行速度测试 _stopwatch类net制作秒表-程序员宅基地

软件的运行速度必须要在用户可以接受的范围内。通常,改善那些短暂的但频繁使用的例程的速度会大幅度地提高软件的整体速度。 要改善速度,当然首先要能够量度时间。好,那我们考虑一下在跑道上的情况,枪声一响,马上按下秒表开始计时,在选手到达终点那一刻结束计时,这时就可以知道该选手所用的时间了。要开始对下一轮比赛计时前,要先将秒表归零。.NET2.0也提供了这样一个秒表:Stopwatch类,它可以比较_stopwatch类net制作秒表

mongodb 使用遇到的几个问题。-程序员宅基地

异常: org.springframework.data.mongodb.UncategorizedMongoDbException: Prematurely reached end of stream; nested exception is com.mongodb.MongoSocketReadException: Prematurely reached end of stream at or...

c语言循环结构上机作业答案,C语言循环结构练习题带答案-程序员宅基地

C++ 循环结构第5章 循环结构程序设计5.1 基本知识点while语句的使用格式和注意事项 do-while语句的使用格式和注意事项 for语句的使用格式和注意事项break和continue语句在循环语句中的应用 循环结构的嵌套使用goto语句实现循环结构 穷举法程序设计方法 迭代程序设计方法5.2 练习题51. 单项选择题(1)语句while (!e);中的条件!..._第五章循环结构程序设计上机练习1——while语句和do...while语句

字典树(Trie Tree)-程序员宅基地

基本概念和性质在计算机科学中,trie,又称前缀树或字典树或单词搜索树,是一种有序树,用于保存关联数组,其中的键通常是字符串。与二叉查找树不同,键不是直接保存在节点中,而是由节点在树中的位置决定。一个节点的所有子孙都有相同的前缀,也就是这个节点对应的字符串,而根节点对应空字符串。一般情况下,不是所有的节点都有对应的值,只有叶子节点和部分内部节点所对应的键才有相关的值。本文地址:ht...

43.Fabric 1.0源代码分析(43) Tx(Transaction 交易)-程序员宅基地

Fabric 1.0源代码笔记 之 Tx(Transaction 交易)1、Tx概述Tx,即Transaction,交易或事务。Tx代码分布目录结构如下:protos/common/common.pb.go,交易的封装即Envelope结构体。也包括Payload、Header、ChannelHeader和SignatureHeader。protos/utils目录,交易相关部分工具函...