SpringMVC环境下实现的Ajax异步请求JSON格式数据

这篇文章主要介绍了springmvc环境下实现的ajax异步请求json格式数据的相关资料,需要的朋友可以参考下

一 环境搭建

首先是常规的spring mvc环境搭建,不用多说,需要注意的是,这里需要引入jackson相关jar包,然后在spring配置文件“springmvc-servlet.xml”中添加json解析相关配置,我这里的完整代码如下:

text/html;charset=UTF-8application/json;charset=UTF-8atom=application/atom+xmlhtml=text/htmljson=application/jsonxml=application/xml*=*/*

登录后复制

项目结构:

SpringMVC环境下实现的Ajax异步请求JSON格式数据

二 测试实例

(1)在WEB-INF/jsp目录下新建了一个index.jsp文件,包含了简单的jQuery的ajax请求,请求数据的格式是JSON,具体代码如下:

">jQuery i18n$().ready(function() {$("#sub").click(function() {var name = $("#username").val();var age = 18;var user = {"username":name,"age":age};$.ajax({url : 'hello.json',type : 'POST',data : JSON.stringify(user), // Request body contentType : 'application/json; charset=utf-8',dataType : 'json',success : function(response) {//请求成功alert("你好" + response.username + "[" + response.age + "],当前时间是:" + response.time + ",欢迎访问:http://www.zifangsky.cn");},error : function(msg) {alert(msg);}});});});

登录后复制

(2)一个简单的model类User,代码如下:

package cn.zifangsky.controller;public class User {private String username;private int age;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}

登录后复制

(3)controller类TestController.java:

package cn.zifangsky.controller;import java.text.Format;import java.text.SimpleDateFormat;import java.util.Date;import java.util.HashMap;import java.util.Map;import org.springframework.context.annotation.Scope;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.servlet.ModelAndView;@Controller@Scope("prototype")public class TestController {/*** 转到页面*/@RequestMapping(value = "/hello.html")public ModelAndView list() {ModelAndView view = new ModelAndView("index");return view;}/*** ajax异步请求, 请求格式是json*/@RequestMapping(value = "/hello.json", method = { RequestMethod.POST })@ResponseBodypublic Map hello(@RequestBody User user) {// 返回数据的Map集合Map result = new HashMap();Format format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 返回请求的usernameresult.put("username", user.getUsername());// 返回年龄result.put("age", String.valueOf(user.getAge()));// 返回当前时间result.put("time", format.format(new Date()));return result;}}

登录后复制

关于具体的执行步骤我简单说一下:

i)项目启动后,在浏览器中访问:http://localhost:8089/SpringDemo/hello.html,然后会转到执行controller中的list方法,接着会转到/WEB-INF/jsp/index.jsp(PS:在controller中返回的是逻辑视图,跟在springmvc-servlet.xml文件中定义的路径前缀和后缀进行拼接后合成文件的真正路径)

ii)在index.jsp页面输入文字然后点击按钮,将会触发ajax请求,这个请求会获取输入框中的数据和默认的“age”参数拼接成json格式字符串最后提交到“hello.json”这个请求,也就是执行controller中的hello方法

iii)hello方法执行完毕后会返回一系列数据最后在页面中显示出来

(4)效果如下:

SpringMVC环境下实现的Ajax异步请求JSON格式数据

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

浅谈ajax请求技术

Ajax加载菊花loding效果

非常实用的ajax用户注册模块

以上就是SpringMVC环境下实现的Ajax异步请求JSON格式数据的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2758367.html

(0)
上一篇 2025年3月8日 08:10:55
下一篇 2025年3月8日 08:11:01

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • ajax传送参数含有特殊字符的快速解决方法

    下面我就为大家带来一篇ajax传送参数含有特殊字符的快速解决方法。希望对大家有所帮助。 JQuery AJAX中遇到这样一个问题,参数中包含特殊字符,比如&’#@等, 这时执行AJAX的时候就会出问题,因为所传的参数变了…

    编程技术 2025年3月8日
    200
  • 浅析巧用Ajax的beforeSend提高用户体验

    下面我就为大家带来一篇浅析巧用ajax的beforesend提高用户体验。现在分享给大家,也给大家做个参考 jQuery是经常使用的一个开源js框架,其中的$.ajax请求中有一个beforeSend方法,用于在向服务器发送请求前执行一些动…

    编程技术 2025年3月8日
    200
  • 详解Ajax和form+iframe 实现文件上传的方法

    文件上传功能在项目中经常会用到,本文给大家介绍两种文件上传的实现——ajax和form+iframe,感兴趣的朋友一起学习吧 自从有html5之后,文件上传变的非常简单。很方便的解决了项目中需要用到的文件上传功能。HTML5支持多图片上传,…

    2025年3月8日
    200
  • Ajax请求中async:false/true的作用分析

    这篇文章主要介绍了ajax请求中async:false/true的作用,结合实例形式分析说明了ajax请求中async:false/true的具体功能与使用技巧,需要的朋友可以参考下 本文实例分析了Ajax请求中async:false/tr…

    编程技术 2025年3月8日
    200
  • 编写轻量ajax组件第三篇实现

    这篇文章主要为大家详细介绍了轻量ajax组件编写第三篇实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 通过之前的介绍,我们知道要执行页面对象的方法,核心就是反射,是从请求获取参数并执行指定方法的过程。实际上这和asp.net mvc…

    编程技术 2025年3月8日
    200
  • AJAX XMLHttpRequest对象详解

    这篇文章主要为大家详细介绍了ajax xmlhttprequest对象,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 AJAX是一种创建交互式网页应用的网页开发技术,是异步Javascript和XML的集合。其核心是XMLHttpReq…

    2025年3月8日
    100
  • Django框架利用ajax实现批量导入数据功能

    这篇文章主要介绍了django框架利用ajax实现批量导入数据功能的相关资料,需要的朋友可以参考下 本文实例为大家分享了网页中利用ajax实现批量导入数据功能的实现方法,供大家参考,具体内容如下 url.py代码: url(r’^worki…

    编程技术 2025年3月8日
    200
  • 浅析json与jsonp区别及通过ajax获得json数据后格式的转换

    一言以蔽之,json返回的是一串数据;而jsonp返回的是脚本代码(包含一个函数调用);接下来通过本文给大家介绍json与jsonp区别及通过ajax获得json数据后格式的转换,需要的朋友参考下  有关json与jsonp的区别(json…

    编程技术 2025年3月8日
    200
  • ajax异步加载图片实例分析

    这篇文章主要介绍了ajax异步加载图片的方法,结合实例形式较为详细的分析了ajax图片异步加载的原理与相关实现技巧,需要的朋友可以参考下 本文实例讲述了ajax异步加载图片的方法。分享给大家供大家参考,具体如下: 图片一般比较大,所以他们都…

    编程技术 2025年3月8日
    200
  • Ajax发送和接收请求

    这篇文章主要为大家详细介绍了ajax发送和接收请求的相关资料,感兴趣的小伙伴们可以参考一下 首先Ajax的不刷新页面提交数据,现在应用非常广泛,废话不多说马上进主题!! 基本上浏览器能接收的信息,Ajax都可以接收,ex:字符串,html标…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论