问题描述: ajax中走error : function(e) {}

问题背景:

在测试controller层时,试过了ResponseEntity<ResponseModel>这种类型返回,这是可行的,但是出于好奇,想看看Map返回可不可行。结果出乎我预料,返回Map时JSP页面总是走error : function(e) {},这就奇怪了,刚才用ResponseEntity返回可行,而Map为什么不行呢?于是就查了ajax走error:function的原因,

原因:

1. 后台出错
2. 后台响应中断

3. 返回数据类型不是JSON

但是打了断点排除了,前两个原因,所以猜测很有可能是第三个原因。

Map返回本来就是没有将其转化为JSON格式,果然

在@RequestMapping上加上@ResponseBody,就可以将返回Map转化为json格式。

先记录下问题解决方法,夜深,等有时间再深究源码

参考:

http://www.iteye.com/problems/88859

https://segmentfault.com/q/1010000004152735?_ea=509054

准备深究参考:

http://mybloggers.blog.163.com/blog/static/1003865092010111631741468/

      @ResponseBody 
1 @RequestMapping(value = "/user/login", method = RequestMethod.POST) public Map<String, Object> userRegister(@RequestBody User user) { Map<String, Object> map = new HashMap<String, Object>(); User userInfo = userLoginService.userRegister(user); System.out.println(user.getNumber()); if (userInfo != null) map.put("code", "0"); else map.put("code", "1"); return map; }
<script type="text/javascript">
    $(document).ready(function() {
        $("#login_user").click(function() {
            var username = $("#login_account").val();
            var pass = $("#login_userPwd").val();
            var user = {
                number : username,
                password : pass
            };//拼装成json格式  

            $.ajax({
                type : "POST",
                url : "http://localhost:8080/iswust2hand/2hand/user/login",
                data : JSON.stringify(user),
                contentType : 'application/json;charset=utf-8',
                dataType : 'json',
                success : function(data) {

                      if (data.code == '0') {
                        window.location.href = "/iswust2hand/index.jsp";
                        alert("欢迎使用西科二手平台!");
                    }else{
                        alert("密码错误,请确认后重新登录!");
                    }  

                },

                error : function(data) {
                    alert("出错:" + data.code);
                }

            });

        });
    });
</script>

前端新手,会点后端,欢迎大神交流!

Spring MVC返回Map格式JSON数据的更多相关文章

  1. spring mvc 返回xml格式数据

    1.问题 : 因为业务需要,需要发送xml格式的数据,使用spring mvc 自己解析,就不用费心去自己搞这些东西. 2.解决: 新建一个实体类,直接在实体类中添加注解即可,如下: @XmlRoot ...

  2. Spring MVC 返回 xml json pdf 数据的配置方法

    <!-- Spring MVC 返回 xml 数据的配置方法 -->     <bean class="org.springframework.web.servlet.vi ...

  3. spring mvc返回json字符串数据,只需要返回一个java bean对象就行,只要这个java bean 对象实现了序列化serializeable

    1.spring mvc返回json数据,只需要返回一个java bean对象就行,只要这个java bean 对象实现了序列化serializeable 2. @RequestMapping(val ...

  4. spring mvc返回json字符串的方式

    spring mvc返回json字符串的方式 方案一:使用@ResponseBody 注解返回响应体 直接将返回值序列化json            优点:不需要自己再处理 步骤一:在spring- ...

  5. Spring MVC 学习总结(九)——Spring MVC实现RESTful与JSON(Spring MVC为前端提供服务)

    很多时候前端都需要调用后台服务实现交互功能,常见的数据交换格式多是JSON或XML,这里主要讲解Spring MVC为前端提供JSON格式的数据并实现与前台交互.RESTful则是一种软件架构风格.设 ...

  6. Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作

    详细的Spring MVC框架搭配在这个连接中: Maven 工程下 Spring MVC 站点配置 (一) Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作 这篇主 ...

  7. Golang-Gin Response 统一返回restful格式的数据

    目的: gin返回restful格式的数据,返回的200,201 的数据 也包括异常时的404/500等情况 直接调用即可 package response import ( "github ...

  8. 11月13日上午ajax返回数据类型为JSON数据的处理

    ajax返回数据类型为JSON数据的处理 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &qu ...

  9. ajax返回数据类型为JSON数据的处理

    JSON数据处理: 1.编码格式必须为utf8 2.echo json_encode($db->GuanQuery($sql));   返回的是关联数组.json_encode返回的是json数 ...

随机推荐

  1. 【原】Learning Spark (Python版) 学习笔记(四)----Spark Sreaming与MLlib机器学习

    本来这篇是准备5.15更的,但是上周一直在忙签证和工作的事,没时间就推迟了,现在终于有时间来写写Learning Spark最后一部分内容了. 第10-11 章主要讲的是Spark Streaming ...

  2. 修改Linux用户的UID、GID

    对于NFS共享文件,保留文件权限,需要UID.GID与nfs-server端一致! 试验环境:Centos6.5_64/172.24.0.26 01.用户的UID和GID不能被占用 [root@26 ...

  3. 拷贝excel里的内容转为JSON的js代码

    <!DOCTYPE html> <html lang="en"> <head> <title>excel转json</titl ...

  4. weui tabbar 切换

    Html: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <met ...

  5. 版本管理工具svn简介

    svn简介 SVN是一种C/S架构的版本管理软件 , 能够帮助我们保存开发过程中各个文件的所有历史版本, 你因此可以方便的找回软件的任何一个历史状态., 日常开发中经常用到. 安装使用 1.  在 u ...

  6. PHP 扩展开发(将自己的一些代码封装成PHP扩展函数)

    今天时间不多,先给个地址,能搜到我这篇blog的朋友先看看我最近在看的一些文章.资料吧: 我的环境是 lnmp1.1 的 (LNMP一键安装包),所以要进行PHP扩展开发首先应该对环境配置和shell ...

  7. Sqlserver内置函数实现MD5

    16位: SELECT substring(sys.fn_sqlvarbasetostr(HashBytes('MD5', '需要加密字符串')),3,16) 32位 SELECT substring ...

  8. 如何把Spring制作成jar包,然后在项目里运行。

    第一步:首先我们先把Spring的代码准备好.如图一 (图1). 第二步:我们在桌面新建一个文件夹,如图二 (图2). 我们要在这个文件夹里新建两个夹,一个文件夹是你项目的包名,也就是我们图1的aop ...

  9. Emeditor批量修改文件编码格式(UTF-8)

    采用宏的形式进行,直接在Emeidor导入宏即可使用: emeditor导入宏:[宏]->[自定义]->[新建]->找到EncodingChange.jsee文件即可. 链接:htt ...

  10. git 提交空文件夹

    git不能提交空文件夹 find . -type d -empty -execdir touch {}/.gitkeep \; -type -d 搜索文件夹 -empty 只搜索空文件夹 -execd ...