@ResponseBody返回4种数据格式的数据
1、返回一个键值对或者集合
前端JS请求:
- //返回值为map的形式
- $(".name").blur(function(){
- $.ajax({
- type:"Post",//请求类型
- url:"/mvc-demo/user/nameProving?t="+new Date().getTime(),//请求的url
- data:{name:$(".name").val()},//请求参数
- dataType:"json",//ajax接口(请求url)返回的数据类型
- success:function(data){//data:返回数据(json对象)
- if(data.name == "empty"){//name为空,错误提示
- $(".errorFont").text("用户名为不能为空!");
- $(".errorFont").css("color","red");
- }else if(data.name == "exist"){
- $(".errorFont").text("用户名已注册");
- $(".errorFont").css("color","green");
- }else if(data.name == "noexist"){
- $(".errorFont").text("用户名未注册");
- $(".errorFont").css("color","red");
- }
- },
- error:function(data){
- $(".errorFont").text("发生未知错误,请联系管理员!");
- $(".errorFont").css("color","red");
- }
- });
- });
后端逻辑处理:
- //验证用户是否存在,返回一个键值对的数据
- @RequestMapping("/nameProving")
- @ResponseBody
- public Object nameProving(String name){
- HashMap<String,String> resultMap=new HashMap<String,String>();
- if(StringUtils.isEmpty(name)){
- resultMap.put("name", "empty");
- }else{
- Userss user=userService.getUserByName(name);
- if(user!=null)
- resultMap.put("name", "exist");
- else
- resultMap.put("name", "noexist");
- }
- return JSONArray.toJSONString(resultMap);
- }
2、返回一个JSON格式的String字符串
前端js请求:
- //返回值为String的形式,dataType:"json"
- $(".name").blur(function(){
- $.ajax({
- type:"Post",//请求类型
- url:"/mvc-demo/user/nameProving2?t="+new Date().getTime(),//请求的url
- data:{name:$(".name").val()},//请求参数
- dataType:"json",//ajax接口(请求url)返回的数据类型
- success:function(data){//data:返回数据(json对象)
- if(data == "empty"){//name为空,错误提示
- $(".errorFont").text("用户名为不能为空2!");
- $(".errorFont").css("color","red");
- }else if(data== "exist"){
- $(".errorFont").text("用户名已注册2");
- $(".errorFont").css("color","green");
- }else if(data == "noexist"){
- $(".errorFont").text("用户名未注册2");
- $(".errorFont").css("color","red");
- }
- },
- error:function(data){
- $(".errorFont").text("发生未知错误,请联系管理员2!");
- $(".errorFont").css("color","red");
- }
- });
- });
后端逻辑处理:
- //验证用户是否存在,返回一个转成json字符串的数据
- @RequestMapping("/nameProving2")
- @ResponseBody
- public String nameProving2(String name){
- String result="";
- if(StringUtils.isEmpty(name)){
- result= "empty";
- }else{
- Userss user=userService.getUserByName(name);
- if(user!=null)
- result= "exist";
- else
- result= "noexist";
- }
- return JSONArray.toJSONString(result);
- }
3、返回一个字符串
前端js请求:
重点:datatype:"text"
- //返回值为String的形式,dataType:"text"
- $(".name").blur(function(){
- $.ajax({
- type:"Post",//请求类型
- url:"/mvc-demo/user/nameProving3?t="+new Date().getTime(),//请求的url
- data:{name:$(".name").val()},//请求参数
- dataType:"text",//ajax接口(请求url)返回的数据类型
- success:function(data){//data:返回数据(json对象)
- if(data == "\"empty\""){//name为空,错误提示
- $(".errorFont").text("用户名为不能为空3!");
- $(".errorFont").css("color","red");
- }else if(data== "\"exist\""){
- $(".errorFont").text("用户名已注册3");
- $(".errorFont").css("color","green");
- }else if(data == "\"noexist\""){
- $(".errorFont").text("用户名未注册3");
- $(".errorFont").css("color","red");
- }
- },
- error:function(data){
- $(".errorFont").text("发生未知错误,请联系管理员3!");
- $(".errorFont").css("color","red");
- }
- });
- });
后端逻辑处理:
- //验证用户是否存在,返回一个字符串的数据
- /**
- * 此方法中有多个注解 method:指定请求方式
- * required:表示参数是否必须 默认为必须 fslse为不是必须
- * @param name
- * @return
- */
- @RequestMapping(value="/nameProving3",method=RequestMethod.POST,params="name")
- @ResponseBody
- public String nameProving3(@RequestParam(value="name",required=false)String name){
- String result="";
- if(StringUtils.isEmpty(name)){
- result= "empty";
- }else{
- Userss user=userService.getUserByName(name);
- if(user!=null)
- result= "exist";
- else
- result= "noexist";
- }
- return result;
- }
4、返回一个类对象的数据
前端js请求:
- //返回值为类对象的形式,dataType:"json"
- $(".name").blur(function(){
- $.ajax({
- type:"Post",//请求类型
- url:"/mvc-demo/user/nameProving4?t="+new Date().getTime(),//请求的url
- data:{name:$(".name").val()},//请求参数
- dataType:"json",//ajax接口(请求url)返回的数据类型
- success:function(data){//data:返回数据(json对象)
- if(data == null){//name为空,错误提示
- $(".errorFont").text("用户名为空或者用户名不存在4!");
- $(".errorFont").css("color","red");
- }else{
- $(".errorFont").text("用户名"+data.name+"已注册4");
- $(".errorFont").css("color","green");
- }
- },
- error:function(data){
- $(".errorFont").text("发生未知错误,请联系管理员2!");
- $(".errorFont").css("color","red");
- }
- });
- });
后端逻辑处理:
- //返回一个类对象
- @RequestMapping("/nameProving4")
- @ResponseBody
- public Userss nameProving4(String name){
- System.out.println("进来了4");
- Userss user=userService.getUserByName(name);
- if(user==null){
- return null;
- }
- return user;
- }
@ResponseBody返回4种数据格式的数据的更多相关文章
- Springboot @ResponseBody返回中文乱码
最近我在把Spring 项目改造Springboot,遇到一个问题@ResponseBody返回中文乱码,因为response返回的content-type一直是application/json;ch ...
- Python实现接口测试中的常见四种Post请求数据
前情: 在日常的接口测试工作中,模拟接口请求通常有两种方法, 利用工具来模拟,比如fiddler,postman,poster,soapUI等 利用代码来模拟,使用到一些网络模块,比如HttpClie ...
- @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 ...
- 计算机系统之汇编---IA32处理器数据格式及数据操作
计算机系统之汇编---IA32处理器数据格式及数据操作 IA32数据格式: Intel用术语"字"表示16位数据类型,因此.称32位数为"双字",称64位数为& ...
- 解决SpringMVC的@ResponseBody返回中文乱码
SpringMVC的@ResponseBody返回中文乱码的原因是SpringMVC默认处理的字符集是ISO-8859-1,在Spring的org.springframework.http.conve ...
- ArcGIS几种数据格式
ArcGIS几种数据格式 ArcInfo常用以下格式的数据:shp.Coverage..Raster CAD和Geodatabase.各种数据的组织形式不一样,其中shp.Coverage.Raste ...
- iOS五种本地缓存数据方式
iOS五种本地缓存数据方式 iOS本地缓存数据方式有五种:前言 1.直接写文件方式:可以存储的对象有NSString.NSArray.NSDictionary.NSData.NSNumber,数据 ...
- SpringMVC3的ResponseBody返回字符串(JSON)乱码问题解决
近日做一个小项目,用spring mvc 做到ajax请求获取jquery ztree 异步获取树返回json对象时出现了乱码,试了各种办法,查了各种资料,一开始以为是数据库的编码有问题,经测试没问题 ...
- [svc]二三层数据格式&&三层数据如何匹配路由
网络知识拾遗 tcpip的4&7层模型 PDU数据包在不同层的不同称呼 物理层(一层)PDU指数据位(Bit). 数据链路层(二层)PDU指数据帧(Frame). 网络层(三层)PDU指数据包 ...
随机推荐
- Python中classmethod和staticmethod的区别
学习python中经常会出现一些相近或者相似的语法模块等,需要对比分析才能加深记忆,熟练运用. staticmethod:静态方法 classmethod:类方法 在python中,静态方法和类方法都 ...
- 软技能-代码外的生存指南PDF下载
编程只是我们职业生涯中的一部分,我们还需要更多的其他技能 链接:https://pan.baidu.com/s/1d7z_7NCEFT2lsSWO1n-OuA 提取码:zj32 链接失效请留言
- Springcloud 2.x 版本 分布式配置中心
一.什么是分布式配置中心? 就是为微服务架构中的微服务提供集中化的外部配置支持,配置中心为各个微服务应用的所有环境提供了中心化的外部配置(可能比较难理解,想知道是什么意思就要知道为什么这么配置:这么配 ...
- HNUSTOJ-1437 无题
1437: 无题 时间限制: 1 Sec 内存限制: 128 MB提交: 268 解决: 45[提交][状态][讨论版] 题目描述 tc在玩一个很无聊的游戏:每一次电脑都会给一个长度不超过10^5 ...
- 能够打开国内网络,比如百度微信,但是打不开外国网站,该怎么解决(主要是DNS的问题)
(1)公司设置局域网外网打不开解决方法一: 如果是代理服务器上网,是因为服务上没有映射好外网访问网页的!解决方法是在服务器上开一个端口映射软件! 如果是路由器上网,就是路由器上没有映射外网访问的端口, ...
- 排列perm HYSBZ - 1072(状压dp/暴力)
Description 给一个数字串s和正整数d, 统计s有多少种不同的排列能被d整除(可以有前导0).例如123434有90种排列能被2整除,其中末位为2的有30种,末位为4的有60种. Input ...
- nginx启动报错
nginx启动的时候报错 nginx: [emerg] invalid number of arguments in "root" directive in /etc/nginx/ ...
- spring整合apache-shiro的简单使用
这里不对shiro进行介绍,介绍什么的没有意义 初学初用,不求甚解,简单使用 一.导入jar包(引入坐标) <!--shiro和spring整合--> <dependency> ...
- js中的Math对象
绝对值Math.abs() console.log(Math.abs(-25)); console.log(Math.abs('-25'));//存在隐式转换可以求绝对值 co ...
- modesim 仿真问题
> unisim (ERROR: Library path "d:/Xilinx/14.3/ISE_DS/ISE//vhdl/mti_se/10.1a/nt64/unisim/unis ...