springmvc学习笔记(八)json传递数据
来源:互联网 发布:怎么做图书marc数据 编辑:程序博客网 时间:2024/05/01 10:10
这节进行json传递数据的学习.
1.adduserView.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <html> <head> <title>My JSP 'welcom.jsp' starting page</title> </head> <body><form action="">姓名:<input type="text" id="name" name="name"><br>年龄:<input type="text" id="age" name="age"><br><input type="button" id="subBtn" value="提交" ></form><script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-2.1.4.min.js"></script><script type="text/javascript">$(document).ready(function(){$("#subBtn").click(function(){//不知道什么原因,我在看视频教程的时候,视频里的get方式会出现乱码的问题,在这里却没有出现.//是不是这里修改了Tomcat里的配置:URIEncoding="UTF-8"//或许是这里自定义了一个DispatcherServlet的原因//我把Tomcat下的URIEncoding删掉后测试,结果也出现了乱码,看来问题就出在这里//还有一个问题,以前我用jquery取value的时候用attr("value"),总取不到值,现在也是;//我用的是.val()方法,但视频教程里却不让这样取,//很困惑啊,attr取不到值啊.奇怪的是教程里却取得到var name = $("#name").val();var age = $("#age").val();var user = {name:name, age:age};$.ajax({url:"${pageContext.request.contextPath}/user/addUser",type:"get",data:user,dataType:"json",success:function(data){alert(data);//alert(data.name+"===="+data.age);//data = eval("("+data+")")alert(data.name+"===="+data.age);}});});});</script> </body></html>
注意:jsp中的路径最好不要用相对路径,要使用绝对路径.
2.Controller类
package com.skymr.mvc.controller.annotation;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import com.skymr.mvc.entity.User;@Controller@RequestMapping("/user")public class UserController {@RequestMapping("/addUser")public String addUser(User user, HttpServletResponse response){System.out.println("name=" + user.getName());PrintWriter outer = null;//注意:user.getName是个字符串,需要加上引号,否则会出错String json = "{\"name\":\""+user.getName()+"\",\"age\":"+user.getAge()+"}";//设置返回结果为json格式//response.setContentType("application/json");//不加这行会出现乱码response.setCharacterEncoding("UTF-8");try {outer = response.getWriter();outer.write(json);} catch (IOException e) {e.printStackTrace();}finally{try{outer.flush();}catch(Exception e){}try{outer.close();}catch(Exception e){}}return null;}@RequestMapping("/toUser")public String toUser(HttpServletRequest request){request.setAttribute("result", "toUser-----");return "adduserView";}}
3,返回json格式数据方式
1).response.setContentType("application/json"); //教程里是这样做的.
2). ajax请求时加入参数 dataType:"json"
3)若返回的是字符串格式的json,可以eval一节,转换成json object
data = eval("("+data+")")
0 0
- springmvc学习笔记(八)json传递数据
- SpringMVC学习笔记(八):Ajax用法二(借助json传对象数据)
- SpringMVC学习笔记(八)
- SpringMVC(5)传递JSON数据实例
- SpringMVC校验---SpringMVC学习笔记(八)
- SpringMVC校验---SpringMVC学习笔记(八)
- SpringMVC学习(八)-返回JSON
- springmvc学习笔记(二)路径配置与数据传递
- springmvc学习笔记(七)数据传递及乱码问题
- json数据交互---SpringMVC学习笔记(十二)
- json数据交互---SpringMVC学习笔记(十二)
- springmvc学习笔记(18)-json数据交互
- springmvc学习笔记(18)-json数据交互
- SpringMVC之json数据传递
- springMVC传递JSON格式数据
- SpringMVC传递json格式数据
- springmvc传递json map数据
- SpringMVC学习笔记(五):参数传递
- 深入浅出CChart 每日一课——快乐高四第九课 于无声处,CChart内置功能介绍之数据存取篇
- 站点访问量太对的解决办法(阿里2015)
- LeetCode2.1.17(Plus One)
- 学习
- GDI+ 使用指南(basic guiding of GDI plus )
- springmvc学习笔记(八)json传递数据
- 例说linux内核与应用数据通信(一):添加一个系统调用
- Android性能调优工具TraceView介绍
- 文章标题
- javascript-jquery插件--FlexGrid 用法参数
- QT跨线程的信号与槽[2]---后台SOCKET
- UVAoj 11178Morley's Theorem
- mysql 数据表的基本操作
- cdev_init和cdev_add之后在/dev目录下没有长出设备节点原因