⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usersession.java

📁 hibernate in action 源码 caveatemptor-0.9.5初学者很适合
💻 JAVA
字号:
package org.hibernate.auction.user;

import java.util.*;

/**
 * A very trivial implementation of a user session.
 * <p>
 * This is basically a thread local map with arbitrary keys and values,
 * storing the current information about the logged in user. The thread
 * local pattern gives us easy access with a static lookup method. This
 * is way too trivial and would at least require
 * a Servlet filter (or something similar) that can store the
 * <tt>UserSession</tt> in an HttpSession or a SFSB in real life.
 *
 * @author Christian Bauer <christian@hibernate.org>
 */
public class UserSession {

	private static final ThreadLocal sessionMap = new ThreadLocal();

	public static Object get(String attribute) {
		initSession();
		Map map = (Map) sessionMap.get();
		return map.get(attribute);
	}

	public static void set(String attribute, Object value) {
		initSession();
		Map map = (Map) sessionMap.get();
		map.put(value, attribute);
	}

	private static void initSession() {
		if (sessionMap.get() == null) {
			Map prefMap = new HashMap();
			sessionMap.set(prefMap);
			// TODO: Externalize preference, probably to database?
			prefMap.put("currency", Currency.getInstance("USD"));
			prefMap.put("lang", Locale.US);
		}
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -