使用Ajax的Spring MVC REST调用
这篇文章提供了对Spring MVC Web应用程序的REST调用的简单示例。 它基于在Spring MVC上下文示例中使用Spring MVC服务静态资源和使用Ajax获取JSON 。 该代码可在GitHub的Spring-REST-With-Ajax目录中找到。
主页
我们的主页包含与执行Ajax调用的Javascript函数链接的四个按钮:
...
<body>
<h1>Welcome To REST With Ajax !!!</h1>
<button type='button' onclick='RestGet()'>GET</button>
<button type='button' onclick='RestPut()'>PUT</button>
<button type='button' onclick='RestPost()'>POST</button>
<button type='button' onclick='RestDelete()'>DELETE</button>
</body>
...
Java脚本
我们的Javascript文件包含四个功能:
var prefix = '/spring-rest-with-ajax';var RestGet = function() {$.ajax({type: 'GET',url: prefix + '/MyData/' + Date.now(),dataType: 'json',async: true,success: function(result) {alert('At ' + result.time+ ': ' + result.message);},error: function(jqXHR, textStatus, errorThrown) {alert(jqXHR.status + ' ' + jqXHR.responseText);}});
}var RestPut = function() {var JSONObject= {'time': Date.now(),'message': 'User PUT call !!!'};$.ajax({type: 'PUT',url: prefix + '/MyData',contentType: 'application/json; charset=utf-8',data: JSON.stringify(JSONObject),dataType: 'json',async: true,success: function(result) {alert('At ' + result.time+ ': ' + result.message);},error: function(jqXHR, textStatus, errorThrown) {alert(jqXHR.status + ' ' + jqXHR.responseText);}});
}var RestPost = function() {$.ajax({type: 'POST',url: prefix + '/MyData',dataType: 'json',async: true,success: function(result) {alert('At ' + result.time+ ': ' + result.message);},error: function(jqXHR, textStatus, errorThrown) {alert(jqXHR.status + ' ' + jqXHR.responseText);}});
}var RestDelete = function() {$.ajax({type: 'DELETE',url: prefix + '/MyData/' + Date.now(),dataType: 'json',async: true,success: function(result) {alert('At ' + result.time+ ': ' + result.message);},error: function(jqXHR, textStatus, errorThrown) {alert(jqXHR.status + ' ' + jqXHR.responseText);}});
}
控制者
我们的控制器捕获REST调用并返回JSON。 在实际的应用程序中,将执行CRUD操作而不是返回JSON:
@Controller
@RequestMapping(value = '/MyData')
public class MyRESTController {@RequestMapping(value='/{time}', method = RequestMethod.GET)public @ResponseBody MyData getMyData(@PathVariable long time) {return new MyData(time, 'REST GET Call !!!');}@RequestMapping(method = RequestMethod.PUT)public @ResponseBody MyData putMyData(@RequestBody MyData md) {return md;}@RequestMapping(method = RequestMethod.POST)public @ResponseBody MyData postMyData() {return new MyData(System.currentTimeMillis(),'REST POST Call !!!');}@RequestMapping(value='/{time}', method = RequestMethod.DELETE)public @ResponseBody MyData deleteMyData(@PathVariable long time) {return new MyData(time, 'REST DELETE Call !!!');}
}
运行示例
编译后,可以使用mvn tomcat:run运行该示例。 然后,浏览:
http:// localhost:8585 / spring-rest-with-ajax /
将显示主页:
如果单击任何按钮,将显示一个弹出窗口:
见这里为更多关于REST•多个Spring相关的帖子在这里 。
参考: 技术说明博客上的JCG合作伙伴 Jerome Versrynge的Spring MVC REST使用Ajax进行了调用 。
翻译自: https://www.javacodegeeks.com/2012/11/spring-mvc-rest-calls-with-ajax.html
使用Ajax的Spring MVC REST调用相关推荐
- jqgrid mvc_jqGrid,REST,AJAX和Spring MVC集成
jqgrid mvc 两年多以前,我写了一篇关于如何在Struts2中实现优雅的CRUD的文章. 实际上,我必须就该主题写两篇文章,因为该主题如此广泛. 今天,我采用了一套更为流行的,完善的框架和库, ...
- jqGrid,REST,AJAX和Spring MVC集成
两年多以前,我写了一篇关于两个如何在Struts2中实现优雅的CRUD的文章. 实际上,我必须就该主题写两篇文章,因为该主题如此广泛. 今天,我采用了一套更为流行的,完善的框架和库,采用了更为轻量级的 ...
- ajax modelmap,spring mvc+ajax处理JSON返回前台的方法
在 Spring mvc3中,响应.接受 JSON都十分方便. 使用注解@ResponseBody可以将结果(一个包含字符串和JavaBean的Map),转换成JSON. 使用 @RequestBod ...
- ajax modelmap,Spring MVC ModelMap.md
近来发现controller里有不同的处理返回数据的方式,其中包括ModelMap不明白是如何处理数据返回的,所以在此记录如下: 1.说到如何处理返回数据,要涉及到jsp的九大内置对象及其作用域 2. ...
- mvc 一般注释_使用带有注释和JQuery的Spring MVC 3的Ajax
mvc 一般注释 与Ajax一起工作对我来说一直很有趣! 是不是 ? 我将使您轻松将Ajax与Spring MVC 3和JQuery结合使用. 这篇文章将向您说明如何在工业编码的现实生活中使用Ajax ...
- 使用带有注释和JQuery的Spring MVC 3的Ajax
与Ajax一起工作对我来说一直很有趣! 是不是 ? 我将使您轻松将Ajax与Spring MVC 3和JQuery结合使用. 这篇文章将向您说明如何在工业编码的现实生活中使用Ajax. 和往常一样,我 ...
- Spring MVC和JQuery用于Ajax表单验证
在本教程中,我们将看到如何使用Ajax和Spring MVC和JQuery在服务器端验证表单. Spring MVC为通过注释驱动的配置采用Ajax提供了非常方便的过程. 我们将使用此注释驱动的配置以 ...
- Spring MVC 原理 - DispatcherServlet调用完整过程
本篇主要讲解了Spring mvc的调用过程,通过这个过程来了解Spring的原理. 进入web.xml中配置的Spring拦截(调度)器: 调用堆栈信息: 开始拦截,这一步主要是根据request获 ...
- spring mvc 返回json数据到ajax报错parseerror问题
最近使用ajax接收spring mvc传过来的json数据时总是出现parseerror的错误,错误源码如下: 前端: $.ajax({type: 'POST',url: "groupFu ...
最新文章
- spring之继承配置
- python中requests库的用途-数据爬虫(三):python中requests库使用方法详解
- linux的同步与互斥
- 从头开始复习css之2D变换
- kotlin使用代码javaClass或class.java报错:unresolved reference
- C++仿Java反射机中字符串创建类的思想,初步实现
- 在CentOS4上安装JMagick
- 解决Latex编译报错:Command `\Bbbk‘ already defined. ...ol{\Bbbk} {\mathord}{AMSb}{“7C}
- NetCore控制台实现自定义CommandLine功能
- 基于C#的安全聊天工具设计
- Pr零基础入门指南笔记二
- Vue进阶(六十八):JS 判断当前浏览器是否为 IE
- SPARC架构下的反汇编(四)——SPARC汇编语言(二)
- 计算机工程学院团总支学生会,凝聚团队力量,展现青春活力——计算机工程学院团总支学生会开展学生干部素质拓展活动...
- 【AirSim】Windows下搭建AirSim
- win7cmd闪退_Win7运行bat批处理闪退怎么解决
- mysql的interval()引出的
- 推荐一款免费的cdn加速网站
- 主题 07:如何进行 Java 系统性能优化(下)
- 无数据蒸馏方向文献_1
热门文章
- 用python绘制图形_使用Python的turtle画炫酷图形
- springboot:BeanPostProcessor示例及分析
- jdbc如何写csv文件_Java:将JDBC结果集作为CSV流化
- switch字符串jdk_JDK 12 Early Access Build 12中的原始字符串文字支持
- Java 8 Stream中间操作(方法)示例
- junit测试线程_一个在自己的线程中运行测试的JUnit规则
- jedis与redis_Redis与Jedis排序
- MongoDB索引策略和索引类型
- 使用Spock Mocks进行Grails 3.3集成测试
- 带有Gradle的Spring Boot Web应用程序