在SpringMVC中的普通类中如何获取request,在此mark下:

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;

/**
 * 获取resquest
 * @return HttpServletRequest
 */
public HttpServletRequest getRequest() {
	HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder
			.getRequestAttributes()).getRequest();
	return request;
}

/**
 * 获取resquest的session
 * @return HttpSession
 */
public HttpSession getSession() {
	// 获取request
	HttpServletRequest request = getRequest();
	// 如果存在session,则获取该session;如果不存在session,则不创建该session
	HttpSession session = request.getSession(false);
	// 1>.request.getSession();2>request.getSession(true);3>request.getSession(false);
	// 三者之间的区别
}

 上述引用的包:

import org.springframework.web.context.request.ServletRequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;

来自于下述的jar包:

spring-web-3.2.8.RELEASE-sources.jar

其对应的pom文件配置的依赖是:

<dependency>
	<groupId>org.springframework</groupId>
	<artifactId>spring-web</artifactId>
	<version>3.2.8.RELEASE</version>
	<exclusions>
		<exclusion>
			<artifactId>commons-logging</artifactId>
			<groupId>commons-logging</groupId>
		</exclusion>
	</exclusions>
</dependency>

 

posted on 2015-07-15 23:38  思变  阅读(377)  评论(0)    收藏  举报