SpringMVC常用工具类总结

Posted 敲代码的小小酥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringMVC常用工具类总结相关的知识,希望对你有一定的参考价值。

RequestContextHolder类

我们在service层处理业务时,有时会用到Request对象。大部分的做法是将Request作为参数,由Controller层传入。
RequestContextHolder类提供了简洁方法,可以通过
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();获得request对象,无需在进行参数传递。简单方便。本质就是将request对象传入了ThreadLocal中。

WebUtils类

该类封装了关于session,cookie的常用方法,传入request对象,可直接返回session和cookie的相关信息。无需再获取session和cookie对象本身。

  1. 获取sessionId方法:
public static String getSessionId(HttpServletRequest request) {
		Assert.notNull(request, "Request must not be null");
		HttpSession session = request.getSession(false);
		return (session != null ? session.getId() : null);
	}

传参request对象,直接返回sessionid。无需再获取session对象。

  1. 获取session的某个attribute属性值
public static Object getSessionAttribute(HttpServletRequest request, String name) {
		Assert.notNull(request, "Request must not be null");
		HttpSession session = request.getSession(false);
		return (session != null ? session.getAttribute(name) : null);
	}

传入request对象和attrubute的key,返回对应的value值。

  1. 获取cookie对象
public static Cookie getCookie(HttpServletRequest request, String name) {
		Assert.notNull(request, "Request must not be null");
		Cookie[] cookies = request.getCookies();
		if (cookies != null) {
			for (Cookie cookie : cookies) {
				if (name.equals(cookie.getName())) {
					return cookie;
				}
			}
		}
		return null;
	}

通过request对象和name获取相应的cookie。

  1. 根据参数名称获取参数值
public static String findParameterValue(ServletRequest request, String name) {
		return findParameterValue(request.getParameterMap(), name);
	}

传入request对象和参数名称,直接返回参数值。

以上是关于SpringMVC常用工具类总结的主要内容,如果未能解决你的问题,请参考以下文章

python常用代码片段总结

springmvc 注解总结

springmvc 注解总结

SpringMVC初步总结

springMVC学习总结 --springMVC重定向

elasticsearch代码片段,及工具类SearchEsUtil.java