IpUtil,CookeiUtil,ObjectMapperUtil工具类
Posted 宇宙磅礴而冷漠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IpUtil,CookeiUtil,ObjectMapperUtil工具类相关的知识,希望对你有一定的参考价值。
IpUtil
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.StringUtils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
public class IPUtils {
private static Logger logger = LoggerFactory.getLogger(IPUtils.class);
public static String getIpAddr() {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String ip = null;
try {
ip = request.getHeader("x-forwarded-for");
if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (StringUtils.isEmpty(ip) || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_CLIENT_IP");
}
if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_X_FORWARDED_FOR");
}
if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
} catch (Exception e) {
logger.error("IPUtils ERROR ", e);
}
return ip;
}
}
CookieUtil
import org.springframework.boot.web.servlet.server.Session;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class CookieUtil {
public static void addCookie(HttpServletResponse response,String cookieName, String cookieValue, String doMain, int second){
javax.servlet.http.Cookie cookie=new Cookie(cookieName,cookieValue );
cookie.setDomain(doMain);
cookie.setMaxAge(second);
cookie.setPath("/");
response.addCookie(cookie);
}
public static Cookie getCookie(HttpServletRequest request,String cookieName){
Cookie[] cookies=request.getCookies();
if(cookies!=null&&cookies.length>0){
for (Cookie cookie:cookies){
if(cookie.getName().equals(cookieName)){
return cookie;
}
}
}
return null;
}
public static String getCookieValue(HttpServletRequest request,String cookieName){
Cookie cookie=getCookie(request,cookieName );
return cookie==null?null:cookie.getValue();
}
}
ObjectMapperUtil
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class ObjectMapperUtil {
private static final ObjectMapper MAPPER=new ObjectMapper();
public static String toJSON(Object obj){
try {
return MAPPER.writeValueAsString(obj);
} catch (JsonProcessingException e) {
//将检查异常转化为运行时异常,之后被全局异常处理机制处理
e.printStackTrace();
throw new RuntimeException(e);
}
}
//json转对象
public static <T>T toObject(String json,Class<T> target){
try {
return MAPPER.readValue(json,target );
} catch (JsonProcessingException e) {
//将检查异常转化为运行时异常,之后被全局异常处理机制处理
e.printStackTrace();
throw new RuntimeException(e);
}
}
}
以上是关于IpUtil,CookeiUtil,ObjectMapperUtil工具类的主要内容,如果未能解决你的问题,请参考以下文章