【fix sonar】SpringContextUtils文件

This commit is contained in:
梁琦涛
2023-03-06 11:06:36 +08:00
parent dc58a39238
commit 26f531f79a
@@ -1,7 +1,5 @@
package com.jero.common.util;
import javax.servlet.http.HttpServletRequest;
import com.jero.common.constant.ServiceNameConstants;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
@@ -10,6 +8,9 @@ import org.springframework.stereotype.Component;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.util.Objects;
@Component
public class SpringContextUtils implements ApplicationContextAware {
@@ -20,7 +21,11 @@ public class SpringContextUtils implements ApplicationContextAware {
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
SpringContextUtils.applicationContext = applicationContext;
synchronized (SpringContextUtils.class){
if(SpringContextUtils.applicationContext == null){
SpringContextUtils.applicationContext = applicationContext;
}
}
}
/**
@@ -36,7 +41,7 @@ public class SpringContextUtils implements ApplicationContextAware {
* 获取HttpServletRequest
*/
public static HttpServletRequest getHttpServletRequest() {
return ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
return ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
}
/**
@@ -58,7 +63,7 @@ public class SpringContextUtils implements ApplicationContextAware {
HttpServletRequest request = getHttpServletRequest();
return request.getHeader("Origin");
}
/**
* 通过name获取 Bean.
*