`
gege_s
  • 浏览: 18244 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

基于struts2拦截器的权限管理之ThreadLocal在数据传递中的应用

 
阅读更多

费话不多说 ,可以看threadlocal源码明白它是用来做什么的,要说的是在jdk5中它加入了在线程结束后自动移除线程上引用的对象的方法,这方便了使用它来编程的步骤,也增强程序的健壮性。

 

 

/**
 * 这是为配合一个同事要加入aop来记录调用*.service.*impl.save*(..)方法时
 * 要传入当前是哪个用户在调用,用户是哪个部门的,返回的主键是什么。并把这
 * 些信息保存到control表用于分组访问控制。
 */
package com.ylsoft.power.web.intercept;


/**
 * 当前线程操作员信息
 */
public class ThreadLocalOperater {
	/**
	 * local变量
	 */
	private static final ThreadLocal<AccessMessage> local=new ThreadLocal<AccessMessage>();
	
	private ThreadLocalOperater(){
	}
	/**
	 * 获取访问信息
	 * @return
	 */
	public static AccessMessage getAccessMessage(){
		AccessMessage am= local.get();
		if (am==null) {
			am=new AccessMessage();
		}
		return am;
	}
	/**
	 * 设置访问信息
	 * @param accessMessage
	 */
	public static void setAccessMessage(AccessMessage accessMessage){
		local.set(accessMessage);
	}
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics