JAVA, JSON 백엔드에서 프런트엔드로 데이터 전달
ConcurrentDateUtil.Java, 형식을 만드는 데 필요한 시간
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ConcurrentDateUtil {
private static ThreadLocal<DateFormat> threadLocal = new ThreadLocal<DateFormat>() {
@Override
protected DateFormat initialValue() {
return new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
}
};
public static Date parse(String dateStr) throws ParseException {
return threadLocal.get().parse(dateStr);
}
public static String format(Date date) {
return threadLocal.get().format(date);
}
}
JsonResult.java, JsonResult 패키지, 백엔드에서 전방으로 데이터 전달
import com.sf.utils.ConcurrentDateUtil;
import java.util.Date;
public class JsonResult<T> {
public static int NEED_RE_LOGIN = 1;
public static int NEED_RETRY = 2;
private int errCode;
private String message;
private String timestamp = ConcurrentDateUtil.format(new Date());
private T data;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String getTimestamp() {
return timestamp;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
public int getErrCode() {
return errCode;
}
public void setErrCode(int errCode) {
this.errCode = errCode;
}
}
위의 두 종류가 완성되면 우리는 웹 층의 컨트롤러에서 JsonResult로 데이터를 봉인하여 전방으로 전달할 수 있다.다음은 두 가지 상황을 소개하고, 앞부분에서 어떻게 데이터를 추출하는지 보자
2 프런트엔드 JS 데이터 추출 방법
백엔드가 프런트엔드에 전달되는 JsonResult가 맵으로 봉인된 경우 (예:
@ResponseBody
@RequestMapping(value = "/user/getUserAmount", method = RequestMethod.POST)
public JsonResult<Map<String, Integer>> getUserAmount() {
JsonResult<Map<String, Integer>> result = new JsonResult<>();
try {
//
Integer signedAmount = userService.getSignedAmount();
//
Integer totalUserAmount = userService.getTotalUserAmount();
Map<String, Integer> amountMap = new HashMap<>();
amountMap.put("signed", signedAmount);
amountMap.put("sum", totalUserAmount);
result.setData(amountMap);
// , setData , setMessage
result.setMessage(" ");
} catch (Exception e) {
log.warn(ExceptionUtils.getStackTrace(e));
}
return result;
}
지금 전방 JS에서 출석 인원수와 총 인원수 두 개의 데이터를 꺼내려면 어떻게 해야 합니까?","뒤에 맵의 키를 따라가면 됩니다. 아래와 같습니다.
function getSignedAmount(){
$.ajax({
type: "post",
url : getContextPath() + "/user/getUserAmount",
dataType:'json',
data: {
},
success: function(data){
var amount = data.data;
//
var totalAmount = amount.sum;
// ,
var unsignedNumber = amount.sum-amount.signed;
// controller setMessage
var logMessage = data.message;
}
});
}
이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
38. Java의 Leetcode 솔루션텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.