springmvc4.0配置ajax请求json格式数据
1.导入相关jar包:jackson-annotation-2.5.4.jar,jackson-core-2.5.4.jar,jackson-databind-2.5.4.jar.
2.spring-servlet.xml中相关配置:
//命名空间加入mvc:
xmlns:mvc="http://www.springframework.org/schema/mvc" //xsi:schemaLocation中补充:
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
<!-- springmvc4.0的配置方法-->
<!-- 启动注解驱动的mvc功能-->
<mvc:annotation-driven content-negotiation-manager="contentNegotiationManager"/>
<context:annotation-config/>
<bean id="contentNegotiationManager" class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
<property name="favorPathExtension" value="false"></property>
</bean>
<bean id="jsonConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"></bean>
<bean id="stringConverter" class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
</list>
</property>
</bean>
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="jsonConverter"/>
<ref bean="stringConverter"/>
</list>
</property>
</bean>
3.编辑代码
单击btn,触发ajax,调用controller方法,返回json格式数据,并将其显示在页面
3.1 jsp代码表单部分:
<div id="showData">${msg}</div> <form id="paging">
page:<input type="text" name="page" id="page"/>
rows:<input type="text" name="rows" id="rows"/>
<input id="sub" type="button" value="submit"/>
</form>
3.2 js代码ajax部分:
$('#sub').click(function(){
alert("111");
$.ajax({
type:"POST",
url:"sysLogPaging.do",
data:{
"page":$("#page").val(),
"rows":$("#rows").val()
},
dataType:"json",
success:function(data){
var dataajax=JSON.stringify(data); //将json对象数据转为string类型,以便在页面输出
$("#showData").html(dataajax).show();
},
error:function(){
alert("出错");
}
});
});
3.3 java controller被调用部分代码:
@RequestMapping(value="/sysLogPaging", method=RequestMethod.POST)//分页调用函数,返回类型是JSONObject
@ResponseBody //必须写,标示传送流数据
public JSONObject getSystemLog_paging(String page,String rows){
toJson syslogjson = new toJson(); //自定义的tojson类,用于拼接项目所需的特定格式的json数据
return syslogjson.toJson(sysloglist,page,rows);
}
总结:1.所需jar包必须导入,关于配置,springmvc4.0和3.0有所差别,需要注意。
2.如果传送流数据(string,json等格式)controller中 @ResponseBody 不可省略。
3.要将ajax获取的json对象数据返回到页面相应位置,需调JSON.stringify();函数将对象转为string型再行show()。
springmvc4.0配置ajax请求json格式数据的更多相关文章
- SpringMVC4.0以后版本返回json格式数据问题
第一次写博文写的不好,但希望能帮助大家,有什么偏颇的地方希望大家多多斧正.在这个问题上困扰了我两天,这两天翻来覆去睡不着.一直在想这个问题.废话不多说下面进入正题. 1.创建创建web项目,加入Spr ...
- jQuery中使用Ajax获取JSON格式数据示例代码
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.JSONM文件中包含了关于“名称”和“值”的信息.有时候我们需要读取JSON格式的数据文件,在jQuery中 ...
- ajax请求 json格式和数组格式总结
php echo json_encode($data); $.ajax({ url:APP+"?a=total&c=collection", //请求的页面 type:&q ...
- 发ajax响应json格式数据
1.maven依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="h ...
- SpringMvc+ajax 实现json格式数据传递
传JSON对象 前端 function test () { var param = {username : "yitop"}; $.ajax({ timeout : 20000, ...
- ajax 提交 json格式数据到后台
例子:$.ajax({ type: 'POST', url: "/ROOT/modify.do", contentType: "application/json" ...
- Spring注解处理Ajax请求-JSON格式[系统架构:Spring+SpringMVC+MyBatis+MySql]
1.前端jsp页面 <div class="tab_tip"> 请输入[身份证号或姓名] <input type="text" class=& ...
- var dataObj=eval("("+data+")");//转换为json对象(解决在ajax返回json格式数据的时候明明正确的获取了返回值但是却就是进不去success方法的问题。格式错误)
一,原理 1.1,解析1 将字符串解析为JavaScript代码,比如:var a = "alert('a');";这里的a就只是一个字符串而已,输出的话也是alert(a);这句 ...
- jQuery调用ajax获取json格式数据
<body> <div>点击按钮获取音乐列表</div> <input type="button" id="button&quo ...
随机推荐
- java面试集锦
HashMap和HashTable的区别 他们都是Map接口的实现类,实现了将唯一键值映射到特定的值上. HashMap没有分类或者排序,它允许一个null和多个null值. HashTable类似于 ...
- STM32串口控制步进电机(原创)
用的42步进电机: 厂家可能不一样,两项四线步进电机,里面有两个线圈.在电机什么电都没有接的情况下,用万用表测量四个管脚:两两短接(或者阻值很小)的为一组,可以分别接A+,a-剩余接B+,B-;顺序可 ...
- 第 12 章 MySQL 可扩展设计的基本原则
前言: 随着信息量的飞速增加,硬件设备的发展已经慢慢的无法跟上应用系统对处理能力的要求了.此时,我们如何来解决系统对性能的要求?只有一个办法,那就是通过改造系统的架构体系,提升系统的扩展能力,通过组合 ...
- (HTTPS)-强制 SSL (HTTPS)Filter
汗,无知真可怕,Servlert规范中已经有自动跳转到保护页面(Http - Https)的方法了: web.xml <security-constraint> ...
- java 学习笔记1 java语言概述及开发环境
高级语言运行机制 高级语言按程序的执行方式分为编译型和解释型两种. java语言比较特殊,Java程序的执行必须经过先编译后解释的步骤. 1 编译生成字节码,只面向JVM(.class) 2Jvm执行 ...
- 在eclipse-jee-juno中配置Aptana对jQuery代码自动提示
主要问题 在Aptana的Web Project中打开js文件有JavaScript的自动提示,但是在JavaEE项目中却没有. 版本 eclipse-jee-juno,即Eclipse 4.2的Ja ...
- jmeter跨线程组传值
在测试过程中,有时候需要jmeter跨线程组传值,jmeter本身又不具备此功能,那么,又该如何实现呢? 其实,我们可以通过BeanShell去实现. 实现过程如下: 1.线程组A中,使用正则表达式提 ...
- DATA VISUALIZATION – PART 1
Introduction to Data Visualization – Theory, R & ggplot2 The topic of data visualization is very ...
- 第40篇 使用Sublime+MarkDown快速写博客
原文地址:http://blog.laofu.online/2017/06/03/how-use-sublime/ 前端的开发人员应该都知道sublime的神器,今天就说说如何使用sublime结合m ...
- Java线程间通信
1.由来 当需要实现有顺序的执行多个线程的时候,就需要进行线程通信来保证 2.实现线程通信的方法 wait()方法: wait()方法:挂起当前线程,并释放共享资源的锁 notify()方法: not ...