1、返回一个键值对或者集合

前端JS请求:

  1. //返回值为map的形式
  2. $(".name").blur(function(){
  3. $.ajax({
  4. type:"Post",//请求类型
  5. url:"/mvc-demo/user/nameProving?t="+new Date().getTime(),//请求的url
  6. data:{name:$(".name").val()},//请求参数
  7. dataType:"json",//ajax接口(请求url)返回的数据类型
  8. success:function(data){//data:返回数据(json对象)
  9. if(data.name == "empty"){//name为空,错误提示
  10. $(".errorFont").text("用户名为不能为空!");
  11. $(".errorFont").css("color","red");
  12. }else if(data.name == "exist"){
  13. $(".errorFont").text("用户名已注册");
  14. $(".errorFont").css("color","green");
  15. }else if(data.name == "noexist"){
  16. $(".errorFont").text("用户名未注册");
  17. $(".errorFont").css("color","red");
  18. }
  19. },
  20. error:function(data){
  21. $(".errorFont").text("发生未知错误,请联系管理员!");
  22. $(".errorFont").css("color","red");
  23. }
  24. });
  25. });

后端逻辑处理:

  1. //验证用户是否存在,返回一个键值对的数据
  2. @RequestMapping("/nameProving")
  3. @ResponseBody
  4. public Object nameProving(String name){
  5. HashMap<String,String> resultMap=new HashMap<String,String>();
  6. if(StringUtils.isEmpty(name)){
  7. resultMap.put("name", "empty");
  8. }else{
  9. Userss user=userService.getUserByName(name);
  10. if(user!=null)
  11. resultMap.put("name", "exist");
  12. else
  13. resultMap.put("name", "noexist");
  14. }
  15. return JSONArray.toJSONString(resultMap);
  16. }

2、返回一个JSON格式的String字符串

前端js请求:

  1. //返回值为String的形式,dataType:"json"
  2. $(".name").blur(function(){
  3. $.ajax({
  4. type:"Post",//请求类型
  5. url:"/mvc-demo/user/nameProving2?t="+new Date().getTime(),//请求的url
  6. data:{name:$(".name").val()},//请求参数
  7. dataType:"json",//ajax接口(请求url)返回的数据类型
  8. success:function(data){//data:返回数据(json对象)
  9. if(data == "empty"){//name为空,错误提示
  10. $(".errorFont").text("用户名为不能为空2!");
  11. $(".errorFont").css("color","red");
  12. }else if(data== "exist"){
  13. $(".errorFont").text("用户名已注册2");
  14. $(".errorFont").css("color","green");
  15. }else if(data == "noexist"){
  16. $(".errorFont").text("用户名未注册2");
  17. $(".errorFont").css("color","red");
  18. }
  19. },
  20. error:function(data){
  21. $(".errorFont").text("发生未知错误,请联系管理员2!");
  22. $(".errorFont").css("color","red");
  23. }
  24. });
  25. });

后端逻辑处理:

  1. //验证用户是否存在,返回一个转成json字符串的数据
  2. @RequestMapping("/nameProving2")
  3. @ResponseBody
  4. public String nameProving2(String name){
  5. String result="";
  6. if(StringUtils.isEmpty(name)){
  7. result= "empty";
  8. }else{
  9. Userss user=userService.getUserByName(name);
  10. if(user!=null)
  11. result= "exist";
  12. else
  13. result= "noexist";
  14. }
  15. return JSONArray.toJSONString(result);
  16. }

3、返回一个字符串

前端js请求:

重点:datatype:"text"

  1. //返回值为String的形式,dataType:"text"
  2. $(".name").blur(function(){
  3. $.ajax({
  4. type:"Post",//请求类型
  5. url:"/mvc-demo/user/nameProving3?t="+new Date().getTime(),//请求的url
  6. data:{name:$(".name").val()},//请求参数
  7. dataType:"text",//ajax接口(请求url)返回的数据类型
  8. success:function(data){//data:返回数据(json对象)
  9. if(data == "\"empty\""){//name为空,错误提示
  10. $(".errorFont").text("用户名为不能为空3!");
  11. $(".errorFont").css("color","red");
  12. }else if(data== "\"exist\""){
  13. $(".errorFont").text("用户名已注册3");
  14. $(".errorFont").css("color","green");
  15. }else if(data == "\"noexist\""){
  16. $(".errorFont").text("用户名未注册3");
  17. $(".errorFont").css("color","red");
  18. }
  19. },
  20. error:function(data){
  21. $(".errorFont").text("发生未知错误,请联系管理员3!");
  22. $(".errorFont").css("color","red");
  23. }
  24. });
  25. });

后端逻辑处理:

  1. //验证用户是否存在,返回一个字符串的数据
  2. /**
  3. * 此方法中有多个注解 method:指定请求方式
  4. * required:表示参数是否必须 默认为必须 fslse为不是必须
  5. * @param name
  6. * @return
  7. */
  8. @RequestMapping(value="/nameProving3",method=RequestMethod.POST,params="name")
  9. @ResponseBody
  10. public String nameProving3(@RequestParam(value="name",required=false)String name){
  11. String result="";
  12. if(StringUtils.isEmpty(name)){
  13. result= "empty";
  14. }else{
  15. Userss user=userService.getUserByName(name);
  16. if(user!=null)
  17. result= "exist";
  18. else
  19. result= "noexist";
  20. }
  21. return result;
  22. }

4、返回一个类对象的数据

前端js请求:

  1. //返回值为类对象的形式,dataType:"json"
  2. $(".name").blur(function(){
  3. $.ajax({
  4. type:"Post",//请求类型
  5. url:"/mvc-demo/user/nameProving4?t="+new Date().getTime(),//请求的url
  6. data:{name:$(".name").val()},//请求参数
  7. dataType:"json",//ajax接口(请求url)返回的数据类型
  8. success:function(data){//data:返回数据(json对象)
  9. if(data == null){//name为空,错误提示
  10. $(".errorFont").text("用户名为空或者用户名不存在4!");
  11. $(".errorFont").css("color","red");
  12. }else{
  13. $(".errorFont").text("用户名"+data.name+"已注册4");
  14. $(".errorFont").css("color","green");
  15. }
  16. },
  17. error:function(data){
  18. $(".errorFont").text("发生未知错误,请联系管理员2!");
  19. $(".errorFont").css("color","red");
  20. }
  21. });
  22. });

后端逻辑处理:

  1. //返回一个类对象
  2. @RequestMapping("/nameProving4")
  3. @ResponseBody
  4. public Userss nameProving4(String name){
  5. System.out.println("进来了4");
  6. Userss user=userService.getUserByName(name);
  7. if(user==null){
  8. return null;
  9. }
  10. return user;
  11. }

@ResponseBody返回4种数据格式的数据的更多相关文章

  1. Springboot @ResponseBody返回中文乱码

    最近我在把Spring 项目改造Springboot,遇到一个问题@ResponseBody返回中文乱码,因为response返回的content-type一直是application/json;ch ...

  2. Python实现接口测试中的常见四种Post请求数据

    前情: 在日常的接口测试工作中,模拟接口请求通常有两种方法, 利用工具来模拟,比如fiddler,postman,poster,soapUI等 利用代码来模拟,使用到一些网络模块,比如HttpClie ...

  3. @ResponseBody 返回json字符串的核心类是org.springframework.http.converter.json.MappingJacksonHttpMessageConverter,它使用了Jackson 这个开源的第三方类库。主要是以下两个jar包:jackson-core-asl-1.6.4.jar;jackson-mapper-asl-1.6.4.jar

    @ResponseBody 返回json字符串的核心类是org.springframework.http.converter.json.MappingJacksonHttpMessageConvert ...

  4. 计算机系统之汇编---IA32处理器数据格式及数据操作

    计算机系统之汇编---IA32处理器数据格式及数据操作 IA32数据格式: Intel用术语"字"表示16位数据类型,因此.称32位数为"双字",称64位数为& ...

  5. 解决SpringMVC的@ResponseBody返回中文乱码

    SpringMVC的@ResponseBody返回中文乱码的原因是SpringMVC默认处理的字符集是ISO-8859-1,在Spring的org.springframework.http.conve ...

  6. ArcGIS几种数据格式

    ArcGIS几种数据格式 ArcInfo常用以下格式的数据:shp.Coverage..Raster CAD和Geodatabase.各种数据的组织形式不一样,其中shp.Coverage.Raste ...

  7. iOS五种本地缓存数据方式

    iOS五种本地缓存数据方式   iOS本地缓存数据方式有五种:前言 1.直接写文件方式:可以存储的对象有NSString.NSArray.NSDictionary.NSData.NSNumber,数据 ...

  8. SpringMVC3的ResponseBody返回字符串(JSON)乱码问题解决

    近日做一个小项目,用spring mvc 做到ajax请求获取jquery ztree 异步获取树返回json对象时出现了乱码,试了各种办法,查了各种资料,一开始以为是数据库的编码有问题,经测试没问题 ...

  9. [svc]二三层数据格式&&三层数据如何匹配路由

    网络知识拾遗 tcpip的4&7层模型 PDU数据包在不同层的不同称呼 物理层(一层)PDU指数据位(Bit). 数据链路层(二层)PDU指数据帧(Frame). 网络层(三层)PDU指数据包 ...

随机推荐

  1. [转帖]深入理解 MySQL—锁、事务与并发控制

    深入理解 MySQL—锁.事务与并发控制 http://www.itpub.net/2019/04/28/1723/ 跟oracle也类似 其实所有的数据库都有相同的机制.. 学习了机制才能够更好的工 ...

  2. eclipse中经常用到的修改菜单项

    1.编写java程序时,书写一个类之后,要调用此类的某个方法时,点个点,此类的所有方法都会自动出现,然后再选择需要的那个方法即可: 2.鼠标放在一个类上面,关于此类的相关描述就会自动加载出来,要修改的 ...

  3. net 架构师-数据库-sql server-002-工具

    本章讲述的工具包括: SQL Server 联机丛书 SQL Server配置管理器 SQL Server Management Studio SQL Server Business Intellig ...

  4. 【转】MySQL my.cnf 参数 详解

    [client] port    = 3306    //客户端端口号为3306 socket  = /tmp/mysql.sock  //套接字文件(sockets),这种文件一般用在网络上的资料套 ...

  5. 【转】Hadoop 1.x中fsimage和edits合并实现

    在NameNode运行期间,HDFS的所有更新操作都是直接写到edits中,久而久之edits文件将会变得很大:虽然这对NameNode运行时候是没有什么影响的,但是我们知道当NameNode重启的时 ...

  6. 剑指offer-树的子结构-python

    题目描述 输入两棵二叉树A,B,判断B是不是A的子结构.(ps:我们约定空树不是任意一个树的子结构)     思路 空树不是任意一个树的子结构,如果 root1 与root2 中有一个为空树的话,返回 ...

  7. Android真机测试时无法连接服务器

    之前服务器的通信一直是在模拟机上实现的,今天用在真机上却不成功.百度之后发现是安卓9以后禁止使用HTTP直接访问服务器.记录一下以后使用. 参考博文:https://blog.csdn.net/don ...

  8. Apache 配置IP站点

    配置临时生效 IP: [root@Nagios-Server extra]# ifconfigeth0:0 192.168.1.126/24 up [root@Nagios-Server extra] ...

  9. python打包命令

    打包成exe方法 (1)切换到该文件夹 (2)pyinstaller -F py文件 (py文件要英文才行) -F 生成单个可执行文件 -w 去掉控制台窗口 -p 自定义需要加载的类路径 -i 可执行 ...

  10. 一个简单mock-server 解决方案

    參考: 测试利器之Mock server 介紹 moco server - download Mockman - download 各种Mock工具比较 JMockit中文网 MockWebServe ...