All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.gitee.apanlh.spring.web.resolver.JsonResolver Maven / Gradle / Ivy

There is a newer version: 2.0.0.2
Show newest version
package com.gitee.apanlh.spring.web.resolver;

import com.alibaba.fastjson.TypeReference;
import com.gitee.apanlh.util.dataformat.JsonUtils;
import com.gitee.apanlh.util.valid.ValidParam;
import com.gitee.apanlh.web.model.RequestDataType;
import com.gitee.apanlh.web.model.vo.RequestVO;
import com.gitee.apanlh.web.util.ServletUtils;

import javax.servlet.http.HttpServletRequest;
import java.util.Map;

/**	
 * 	JSON解析器
 * 
 * 	@author Pan
 */
class JsonResolver implements RequestParamResolverStrategy {
	
	/**
	 * 	默认构造函数
	 * 
	 * 	@author Pan
	 */
	JsonResolver() {
		super();
	}
	
	@Override
	public RequestVO resolve() {
		return null;
	}
	
	@Override
	public RequestVO resolve(HttpServletRequest request, RequestVO params, RequestDataType dataType) {
		String body = ServletUtils.readBodyString(request);
		if (!ValidParam.isEmpty(body)) {
			params.setBody(body);
			params.setJsonParams(JsonUtils.toBean(body, new TypeReference>(){}));
			dataType.setHasJson(true);
		}
		return params;
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy