springMVC Ajax实现和原理
来源:互联网 发布:电脑摇奖软件 编辑:程序博客网 时间:2024/06/02 01:12
1.JSON 的jar包
2. 编写目标方法,使其返回 JSON 对应的对象或集合
在方法上添加 @ResponseBody 注解(添加到方法上的)
实现原理
- HttpMessageConverter 是 Spring3.0 新添加的一个接
口,负责将请求信息转换为一个对象(类型为 T),将对象(
类型为 T)输出为响应信息 - 使用 HttpMessageConverter 将请求信息转化并绑定到处理方法的入
参中或将响应结果转为对应类型的响应信息,Spring 提供了两种途径:
– 使用 @RequestBody / @ResponseBody 对处理方法进行标注
– 使用 HttpEntity / ResponseEntity 作为处理方法的入参或返回值 - 当控制器处理方法使用到 @RequestBody/@ResponseBody 或
HttpEntity/ResponseEntity 时, Spring 首先根据请求头或响应头的
Accept 属性选择匹配的 HttpMessageConverter, 进而根据参数类型或
泛型类型的过滤得到匹配的 HttpMessageConverter, 若找不到可用的
HttpMessageConverter 将报错 - @RequestBody 和 @ResponseBody 不需要成对出现
jsp页面传输
$(function(){ $("#testJson").click(function(){ var url = this.href; var args = {}; $.post(url, args, function(data){ for(var i = 0; i < data.length; i++){ var id = data[i].id; var lastName = data[i].lastName; alert(id + ": " + lastName); } }); return false; }); })
没有参数接收,直接返回集合
@ResponseBody @RequestMapping("/testJson") public Collection<Employee> testJson(){ return employeeDao.getAll(); }
有参数,随便在页面中打印 @RequestBody 修饰入参
@ResponseBody @RequestMapping("/testHttpMessageConverter") public String testHttpMessageConverter(@RequestBody String body){ System.out.println(body); return "helloworld! " + new Date(); }
使用 HttpEntity、ResponseEntity 上传下载
下载片段
@RequestMapping("/testResponseEntity") public ResponseEntity<byte[]> testResponseEntity(HttpSession session) throws IOException{ byte [] body = null; ServletContext servletContext = session.getServletContext(); InputStream in = servletContext.getResourceAsStream("/files/abc.txt"); body = new byte[in.available()]; in.read(body); HttpHeaders headers = new HttpHeaders(); headers.add("Content-Disposition", "attachment;filename=abc.txt"); HttpStatus statusCode = HttpStatus.OK; ResponseEntity<byte[]> response = new ResponseEntity<byte[]>(body, headers, statusCode); return response; }
1 0
- springMVC Ajax实现和原理
- ajax原理,流程和实现
- SpringMVC实现原理和代码解读
- SpringMVC 4.2 Ajax实现
- springMVC实现ajax分页
- 原生Ajax的原理和实现
- AJAX和SpringMVC交互
- SpringMVC 拦截器实现原理和登录实现
- SpringMVC 拦截器实现原理和登录实现
- SpringMVC 拦截器实现原理和登录实现
- SpringMVC实现工作原理
- SpringMvc实现原理
- SpringMVC的实现原理
- springMVC 注解实现实例 springMVC+ajax
- Springmvc入门教程,结合Ajax实现最佳精简demo,直击原理,方便易用。
- Ajax SpringMvc 实现登录请求
- ajax+springMVC实现跨域
- springmvc实现ajax上传例子
- Django runserver 支持https
- url %E4%BD%A0%E5%A5%BD 编码问题
- Ubuntu GTK theme
- TCP/IP协议栈之五---------总结
- Session理解
- springMVC Ajax实现和原理
- 搜索算法-搜索的优化
- [UPDATED!] USING YOUR NEW RASPBERRY PI 3 AS A WIFI ACCESS POINT WITH HOSTAPD
- 概略
- eclipse 使用 hadoop plugin 插件 连接不上的问题 updater".java.lang.NullPointerException
- HDU ACM 11 2063 过山车(二分图匈牙利算法)
- scanf[^\n]/fscanf 的%[]和%n使用方法
- 'close' was not declared in this scope
- mongo 导入json文件