直接上代码吧
import java.util.Map;
import org.slf4j.Logger;
import com.cmf.paas.joy.handler.dto.TransDTO;
public class OptResultUtil<T> {
private Logger logger;//日志
private Map<String,Object> paramMap;
public OptResultUtil<T> params(Map<String,Object>paramMap) {
this.paramMap=paramMap;
return this;
}
public OptResultUtil<T> logger(Logger logger) {
this.logger = logger;
return this;
}
public TransDTO<T> success(T data) {
TransDTO<T> dto=new TransDTO<>();
dto.success(data);
return dto;
}
public TransDTO<T> failure(String message,Exception e) {
TransDTO<T> dto=new TransDTO<>();
if(e==null) {
logger.warn(getFormatStr(message));
}else {
logger.error(getFormatStr(message),e) ;
}
dto.failure(message);
return dto;
}
private String getFormatStr(String message) {
StringBuffer format=new StringBuffer(message);
if(paramMap!=null&¶mMap.size()>0) {
/*int i=0;
paramMap.forEach((key,value)->{
format.append(" ").append(key).append(":").append("{").append(value).append("}");
if(i<paramMap.size()-1)
format.append(" ").append("and");
});*/
int i = 0;
for (Map.Entry<String,Object> entity : paramMap.entrySet()) {
format.append(" ").append(entity.getKey().toString()).append(":").append("{").append(entity.getValue().toString()).append("}");
if(i<paramMap.size()-1) {
format.append(" ").append("and");
i++;
}
}
}
return format.toString();
}
}