文档章节

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

_
 _Roger_
发布于 2015/10/20 11:06
字数 423
阅读 4.3K
收藏 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类型

© 著作权归作者所有

_
粉丝 31
博文 82
码字总数 39915
作品 0
武汉
私信 提问
加载中

评论(0)

springmvc 接收 ajax 请求

转载自:https://www.cnblogs.com/oyx305/p/5220751.html 一.传json单值或对象 1.前端 1 var data = {'id':id,'name':name}; 2 $.ajax({ 3 type:"POST", 4 url:"user/saveUser", 5 dataType:......

osc_ecixnrri
2019/01/20
7
0
Ajax与Controller数据交互

1.概念 在ssm框架下实现Ajax与Controller之间各种类型数据的数据交互,从Ajax传值和Controller返回值两个方面理解 1.1 从Ajax → Controller 无论Ajax以什么形式发送数据,在Controller中的接收...

osc_a63j46zs
2018/02/11
9
0
SpringMVC和AJAX交互

在实际开发中我们经常需要前后台交互,那么springmvc与ajax之间交互这里记录下在实际开发中遇到的细节问题。 jsp页面: 1 <fieldset id="login" style="width:600px; border:1px solid #000...

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

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

黑夜的昼
2016/07/03
4K
5
HTTP Status 415 – Unsupported Media Type(使用@RequestBody后postman调接口报错)

问题:使用SpringMVC框架后,接口中入参对象没使用@RequestBody注解,造成postman发起post请求,from-data格式请求可以调通接口,但是raw格式请求调不通接口,然后我加了SpringMVC @Response...

osc_eul3o28k
2019/03/07
15
0

没有更多内容

加载失败,请刷新页面

加载更多

https 原理

HTTPS在传输的过程中会涉及到三个密钥: 服务器端的公钥和私钥,用来进行非对称加密 客户端生成的随机密钥,用来进行对称加密 一个HTTPS请求实际上包含了两次HTTP传输,可以细分为8步。 1.客...

freechengf
35分钟前
11
0
居然还有人这样解说mybatis运行原理

[TOC] mybatis运行分为两部分,第一部分读取配置文件缓存到Configuration对象中。用以创建SqlSessionFactory,第二部分是SqlSession的执行过程。 Mybatis基本认识 动态代理 之前我们知道Map...

烟花散尽13141
35分钟前
8
0
值得关注的11个零知识证明开发包

零知识证明是区块链开发者值得关注的密码学技术,本文整理了11个主流的零知识证明开发库,希望有助于你在自己的项目中学习并利用零知识证明技术。 用自己熟悉的语言学习以太坊DApp开发:Jav...

区块链教程
58分钟前
27
0
万字超强图文讲解AQS以及ReentrantLock应用(建议收藏)

| 好看请赞,养成习惯 你有一个思想,我有一个思想,我们交换后,一个人就有两个思想 If you can NOT explain it simply, you do NOT understand it well enough 现陆续将Demo代码和技术文章...

tan日拱一兵
今天
57
0
从聚合支付业务的设计来聊聊策略模式

六月福利 2020年6月公众号码农小胖哥原创文章转发第一名将送全新《Spring Boot实战》实体书一本,该书是学习热门框架 Spring Boot的经典之作。你不再需要依靠运气,而是勤奋。截止统计日期2...

码农小胖哥
今天
37
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部