`
lihao312
  • 浏览: 480061 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
收藏列表
标题 标签 来源
How to get session information in Spring MVC 3 java http://stackoverflow.com/questions/7342936/how-to-get-session-information-in-spring-mvc-3
ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
HttpSession session = attr.getRequest().getSession();




HttpServletRequest curRequest = 
((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes())
.getRequest();


ServletRequestAttributes requestAttributes = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes();
HttpSession session = requestAttributes.getRequest().getSession();




package samples.utils;

import java.util.Arrays;
import java.util.Collection;
import java.util.Locale;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.sql.DataSource;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.NoUniqueBeanDefinitionException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.context.MessageSource;
import org.springframework.core.convert.ConversionService;
import org.springframework.core.io.ResourceLoader;
import org.springframework.core.io.support.ResourcePatternResolver;
import org.springframework.ui.context.Theme;
import org.springframework.util.ClassUtils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.springframework.web.context.support.WebApplicationContextUtils;
import org.springframework.web.servlet.LocaleResolver;
import org.springframework.web.servlet.ThemeResolver;
import org.springframework.web.servlet.support.RequestContextUtils;


public final class WebContextHolder {
	
	private static final Logger LOGGER = LoggerFactory.getLogger(WebContextHolder.class);
	
	private static final WebContextHolder INSTANCE = new WebContextHolder();
	
	public WebContextHolder get() {
		return INSTANCE;
	}

	private WebContextHolder() {
		super();
	}
	
	// --------------------------------------------------------------------------------------------------------------
	
	public HttpServletRequest getRequest() {
		ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
		return attributes.getRequest();
	}
	
	public HttpSession getSession() {
		return getSession(true);
	}
	
	public HttpSession getSession(boolean create) {
		return getRequest().getSession(create);
	}
	
	public String getSessionId() {
		return getSession().getId();
	}
	
	public ServletContext getServletContext() {
		return getSession().getServletContext();	// servlet2.3
	}
	
	public Locale getLocale() {
		return RequestContextUtils.getLocale(getRequest());
	}
	
	public Theme getTheme() {
		return RequestContextUtils.getTheme(getRequest());
	}

	public ApplicationContext getApplicationContext() {
		return WebApplicationContextUtils.getWebApplicationContext(getServletContext());
	}
	
	public ApplicationEventPublisher getApplicationEventPublisher() {
		return (ApplicationEventPublisher) getApplicationContext();
	}
	
	public LocaleResolver getLocaleResolver() {
		return RequestContextUtils.getLocaleResolver(getRequest());
	}
	
	public ThemeResolver getThemeResolver() {
		return RequestContextUtils.getThemeResolver(getRequest());
	}
	
	public ResourceLoader getResourceLoader() {
		return (ResourceLoader) getApplicationContext();
	}
	
	public ResourcePatternResolver getResourcePatternResolver() {
		return (ResourcePatternResolver) getApplicationContext();
	}

	public MessageSource getMessageSource() {
		return (MessageSource) getApplicationContext();
	}
	
	public ConversionService getConversionService() {
		return getBeanFromApplicationContext(ConversionService.class);
	}

	public DataSource getDataSource() {
		return getBeanFromApplicationContext(DataSource.class);
	}

	public Collection<String> getActiveProfiles() {
		return Arrays.asList(getApplicationContext().getEnvironment().getActiveProfiles());
	}
	
	public ClassLoader getBeanClassLoader() {
		return ClassUtils.getDefaultClassLoader();
	}

	private <T> T getBeanFromApplicationContext(Class<T> requiredType) {
		try {
			return getApplicationContext().getBean(requiredType);
		} catch (NoUniqueBeanDefinitionException e) {
			LOGGER.error(e.getMessage(), e);
			throw e;
		} catch (NoSuchBeanDefinitionException e) {
			LOGGER.warn(e.getMessage());
			return null;
		}
	}

}
下载乱码收藏 java, download, 下载
1.下载文件时,如果文件名中有空白或者中文时需要用下列方法处理:
response.reset();
response.setContentType("application/octet-stream");
filename=new String(filename.getBytes(System.getProperty("file.encoding")),"ISO-8859-1");
response.addHeader("Content-Disposition","attachment;filename=\""+filename+"\"");
记录Maven简单命令 mvn, maven, eclipse, dwtpversion
Maven2 的运行命令为 : mvn ,
常用命令为 :
             mvn archetype:create :创建 Maven 项目
             mvn compile :编译源代码
             mvn test-compile :编译测试代码
             mvn test : 运行应用程序中的单元测试
             mvn site : 生成项目相关信息的网站
             mvn clean :清除目标目录中的生成结果
             mvn package : 依据项目生成 jar 文件
             mvn install :在本地 Repository 中安装 jar
             mvn eclipse:eclipse :生成 Eclipse 项目文件
生成项目
             建一个 JAVA 项目 : mvn archetype:create -DgroupId=com.demo -DartifactId=App
          建一个 web 项目 : mvn archetype:create -DgroupId=com.demo -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp
 
生成 Eclipse 项目
普通 Eclipse 项目执行 : mvn eclipse:eclipse
           Eclipse WTP 项目执行 : mvn eclipse:eclipse –Dwtpversion=1.5
Global site tag (gtag.js) - Google Analytics