文档章节

SpringMVC(五):Ajax传值与接收值

_
 _Roger_
发布于 2015/10/20 11:06
字数 423
阅读 3352
收藏 4


1、Json包fastjson和Jackson

//TODO

jackson core asl 和 jackson mapper asl的区别,作用


2、spring mvc接收简单数据

2.1、接收int等基本类型的数据

jsp页面

$.ajax({
                url: "${ctx}/StdManage/standardsDelete",
                type: "POST",
                data: "id=1969",
                success:function(data){
                    if(data.success == "true") {
                        alert("return success");
                    }
                }
            });

controller接收数据

@RequestMapping("/standardsDelete")
@ResponseBody
public String standardsDelete(@RequestParam Integer id) { //这里id需要使用Integer类型
    System.out.println("id=" + id);
    return "delete";
}


2.2、接收json

JSON.stringify()将json对象转换为json字符串传递。

json对象:{"id":"1", "name": "Roger"}

json字符串:'{"id":"1", "name": "Roger"}'    

注意:json字符串必须在里面使用双引号,外面使用单引号,可以试试两种方式传递的值的不同

使用JSON.stringify()就可以不考虑json字符串中的'和"问题,如果不使用这个就得注意json字符串的方式,如下:

data:'{"id":"1", "name": "Roger"}'        里面需要使用双引号

$.ajax({
    url: "${ctx}/StdManage/testJson",
    type: "POST",
    dataType: "json",
    contentType: "application/json",
    data: JSON.stringify({'id':'1','name':'名字','standardEntities':[{'id':'1', 'entityName':'实体'}]}),
    success:function(data){
        if(data.success == "true") {
            alert("return success");
        }
    }
});

controller

@RequestMapping("/testJson")
@ResponseBody
public void testJson(@RequestBody Standard standard) {
    System.out.println(standard.getName());
    System.out.println(standard.getStandardEntities().size());
}


3、Ajax接收SpringMVC的回传值

ajax

var standard = {"id":1, "entities":"entities", "possibleEntities":"possibleEntities"};
$.ajax({
    url: "${ctx}/StdManage/testJson",
    type: "POST",
    dataType: "json",
    contentType: "application/json",
    data: JSON.stringify(standard),
    success:function(data){
        // 接收List
        alert(data[0]);
        // 接收Map
        // alert(data.success);
    }
});

controller

@RequestMapping("/testJson")
    @ResponseBody
    public List<String> testJson(@RequestBody StandardWithBLOBs standardWithBLOBs) {
        System.out.println("testJson");
        System.out.println(standardWithBLOBs.getId());
//        Map<String, Object> map = new HashMap<>();
//        map.put("success", true);
//        return map;

        List<String> list = new ArrayList<>();
        list.add("hello");
        list.add("word");

        return list;
    }

controller利用@Response回传一些响应信息,这里可以用Map或者List,也可以用其他一些JavaBean类型

© 著作权归作者所有

共有 人打赏支持
_
粉丝 29
博文 82
码字总数 39915
作品 0
武汉
私信 提问
SpringMVC简单构造restful, 并返回json

文章要要点: 快速搭建构造restful的StringMvc GET, POST , PUT , DELETE的各种调用 同一资源 多种表述 (ContentNegotiatingViewResolver解析器),既可以返回对象给JSP, 也可以返回JSON 快速搭...

未眠
2014/12/04
0
24
SpringMVC之接收请求参数和页面传参

Spring接收请求参数 1,使用HttpServletRequest获取 Java代码 @RequestMapping("/login.do") public String login(HttpServletRequest request){ String name = request.getParameter("name")......

白志华
2015/09/23
0
0
SpringMVC注解版前台向后台传值的两种方式

一、概述。 在很多企业的开法中常常用到SpringMVC+Spring+Hibernate(mybatis)这样的架构,SpringMVC相当于Struts是页面到Contorller直接的交互的框架也是界面把信息传输到Contorller层的一...

luck2014
2016/03/16
445
0
jquery要怎么获取多选框(checkbox)选中的值,用ajax的json格式传值,服务器又要用什么类型来接收值。

框架用的的spring jquery要怎么获取多选框(checkbox)选中的值,用ajax的json格式传值,服务器又要用什么类型来接收值。

黑夜的昼
2016/07/03
3.2K
5
springmvc:Failed to convert value of type

环境:springmvc + ajax 前端代码: <script type="text/javascript">var menu = {id:1,name:"首页"};$.getJSON("/site/menu/queryMenuPage", {menu :$.toJSON(menu),pageNum : 1,pageSize :......

彭苏云
2015/06/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

小程序异步操作 跨js执行 在微信小程序里面实现跨页面通信

我们知道,在小程序里面一个页面的变化,是通过调用 setData 函数来实现的。所以想做到在二级页面里让一级页面产生变化,最 Quick And Dirty 的做法就是把一级页面的 this 传入到二级页面去,...

xiaogg
9分钟前
0
0
授于管理员登录其它用户

1.沙盒中,授予管理员登录 安全性控制==>登录访问权限政策

在山的那边
11分钟前
1
0
线程安全的CopyOnWriteArrayList介绍

证明CopyOnWriteArrayList是线程安全的 先写一段代码证明CopyOnWriteArrayList确实是线程安全的。 ReadThread.java import java.util.List; public class ReadThread implements Runnable {......

绝地逢生
14分钟前
0
0
Java重写的7个规则

几年前你可能会遇到这样一个面试题:“重写和重载的区别”、而现在随着科技的更迭、面试的问题越来越高级、面试官的问题也越来越深入、此文是上述面试题的一个延伸、让你从简单的重写规则中更...

architect刘源源
14分钟前
1
0
JavaScript异步编程:Generator与Async

从Promise开始,JavaScript就在引入新功能,来帮助更简单的方法来处理异步编程,帮助我们远离回调地狱。 Promise是下边要讲的Generator/yield与async/await的基础,希望你已经提前了解了它。...

前端攻城老湿
14分钟前
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部