1. 程式人生 > >@ResponseBody返回4種資料格式的資料

@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資料格式資料

1、返回一個鍵值對或者集合 前端JS請求: //返回值為map的形式 $(".name").blur(function(){ $.ajax({ type:"Post",//請求型別 url:"/mvc-demo/user/nameProving?

[Asp.Net]4方法把資料繫結到Dropdownlist

public class ClassMonth{    private string _MonthEN = DateTime.Now.ToString("MMMM",System.Globalization.CultureInfo.CreateSpecificCulture("en"));    privat

Android訪問網路系列之--服務端返回XML或JSON格式資料,Android 進行解析並顯示

例子說明:使用者通過訪問web資源的最新電影資訊,伺服器端生成XML或JSON格式資料,返回Android客戶端進行顯示。 此案例開發需要兩個方面 WEB開發和android開發. 一.web開發相對比較簡單,只是模擬一下 相關程式碼如下: 1.實體Bean package ygc.yxb.domain

Android訪問網路:服務端返回XML或JSON格式資料,Android 進行解析並使用ListView顯示

剛剛入門學習了Android的ListView,也是看了傳智播客黎活明老師的視訊學習了,但是一直執行不了,還報錯了。報的錯誤是:at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.jav

python pymysql flask 簡易使用 和返回指定的json格式資料

pymysql.demo import pymysql import json #print(print.__doc__) conn = pymysql.connect(host="192.168.169.132", user="root"

springMVC返回複雜的json格式資料

一、springMVC返回json格式資料常用的寫法是使用@ResponseBody註解,在每一個方法前加上這個註解,springMVC的json解析機制會自動把返回值(Object型別的物件)轉換為json格式的資料,如果返回的json物件比較複雜,每一個方法

Hive 4檔案格式

hive檔案儲存格式包括以下幾類: 1、TEXTFILE 2、SEQUENCEFILE 3、RCFILE 4、ORCFILE(0.11以後出現) 其中TEXTFILE為預設格式,建表時不指定預設為這個格式,匯入資料時會直接把資料檔案拷貝到hdfs上不進行處理; SEQUENCEFILE,RCFILE,ORC

@ResponseBody返回Json格式資料問題

@ResponseBody 作用:       該註解用於將Controller的方法返回的物件,通過適當的HttpMessageConverter轉換為指定格式後,寫入到Response物件的body資料區。 使用時機:       返回的資料不是html標籤的頁面

springmvc4整合AJAX使用@ResponseBody註解返回JSON資料格式

    一、在使用springMVC4+Hibernate4整合框架,需要使用到@ResponseBody註解來配合AJAX的使用, 但依靠springMVC3的配置和jar包可能會出現     1. java.lang.ClassNotFoundException: co

@ResponseBody返回一個xml格式資料

1.前端js請求: 重點:dataType:"xml" $("#json5").click(function(){ $.ajax({ type:"Post",//請求型別 url:"/mvc-demo/user/nameProving5?t="+ne

Springmvc 4.x利用@ResponseBody返回Json資料

下面是官方文件對於@ResponseBody註解的解釋: Mapping the response body with the @ResponseBody annotation The @ResponseBody annotation is similar to @Re

ajax如何處理伺服器返回的3資料格式

       這篇東西本身是非常基礎的,但是經常在處理ajax返回值的時候還是會犯各種小錯誤,所以就想到把這些方法結合以前寫過的程式碼片段整理一下,方便以後複習和使用。另外呢,雖然能搜到很多類似的文件,但是整理一份自己的還是墜吼的= ̄ω ̄= ajax方法的引數 常用

Springboot之返回json資料格式的兩方式-yellowcong

SpringBoot返回字串的方式也是有兩種,一種是通過@ResponseBody 和@RequestMapping(value = "/request/data", method = RequestMethod.POST, produces = "app

頁面訪問伺服器返回json格式資料太大,導致資料不全被截斷,無法展示

問題:頁面展示呼叫查詢方法查詢全部資料的時候一直顯示loading。。。,開啟偵錯程式顯示 Failed to load resource: net::ERR_SPDY_PROTOCOL_ERROR,而少部分查詢則正常顯示。 因為資料中有圖片轉成的二進位制陣列,資料比較長,由此懷疑

Struts2返回json格式資料踩坑記錄

事件起因 昨天提測修改凍結/解凍銀行卡樣式的功能,微姐測試過程中發現呼叫ajax請求耗時過長,今天來排查,發現瀏覽器請求/finance/ajax/freeze/ajaxGetShopLists時,對應的後端方法getShopList()莫名其妙地執行了兩遍,並且返回給瀏覽器的Json字串如下:

springmvc接收json資料4方式

ajax我經常用到,傳的資料是json資料,json資料又有物件,陣列。所有總結下springmvc獲取前端傳來的json資料方式: 1、以RequestParam接收 前端傳來的是json資料不多時:[id:id],可以直接用@RequestParam來獲取值 @Autowired p

百度搜索排名API介面PC返回JSON資料格式

百度搜索排名API介面返回JSON資料格式 寫個筆記, 記錄一下 https://www.baidu.com/s?wd=加油&pn=50&rn=50&tn=json 引數說明: wd:關鍵詞 pn :  查詢偏移位置 rn:  

POST提交資料時四常見的資料格式

最近專案部署到新環境tomcat+mysql,想看看專案部署成功沒有,就用soupui調對應介面開測試,soupui使用比較簡單,給上介面地址,入參xml報文,把入參的media Type設定為application/xml 點選呼叫就可以了。但是點選呼叫返回值為空。對,就是啥都沒返回。XM

jQuery Ajax 非同步請求data引數資料格式的六方法

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body>

time 模組處理時間資料格式的幾方式

time 模組中處理時間資料格式的幾種方式 在 time 模組中,時間資料主要有三種格式:時間戳(timeStamp)、時間陣列(timeStruct)和時間字串(timeStr)。形式如下圖所示: 對於這三種格式的資料,時間戳與時間陣列之間可以互相轉換,時間陣列和時間字串之間可以互相