SpringMVC--02--上下文工具类(RequestContextHolder)
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
public class ContextUtils {
/**
* 获取HttpServletRequest对象
*/
public static HttpServletRequest getRequest() {
return ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
}
/**
* 获取HttpSession对象
*/
public static HttpSession getSession() {
return getRequest().getSession();
}
/**
* 获取String类型的请求参数
*/
public static String getStringParameter(String name, String defaultValue) {
String value = getRequest().getParameter(name);
return value != null ? value : defaultValue;
}
/**
* 获取Integer类型的请求参数
*/
public static Integer getIntegerParameter(String name, Integer defaultValue) {
String value = getRequest().getParameter(name);
return value != null ? Integer.valueOf(value) : defaultValue;
}
// 其他辅助方法类似上述模板
}
这个代码示例提供了一个工具类ContextUtils
,它使用RequestContextHolder
来获取当前请求的HttpServletRequest
对象和HttpSession
对象。它还提供了获取请求参数的方法,这些参数可以是String
或Integer
类型,如果参数不存在,则返回默认值。这个工具类可以被整个Spring MVC应用程序使用,以便在控制器或服务层方便地访问上下文信息。
评论已关闭