scope

Title Summary

自定義Scope

spring scope

先準備自定義的Scope物件(此範例為JSF的ViewScope) import org.springframework.beans.factory.ObjectFactory; import org.springframework.beans.factory.config.Scope; public class ViewScope implements Scope { public static final String SCOPE_NAME = "custom_view"; /** 取得給定名稱物件,不存在則建立 */ @Override public Object get(String name, ObjectFactory<?> objectFactory) { Map<String, Object> viewMap = FacesContext.getCurrentInstance().getViewRoot().getViewMap(); if (viewMap.containsKey(name)) { return viewMap.get(name); } else { Object object = objectFactory.getObject(); viewMap.put(name, object); return object; } } @Override public String getConversationId() { return null; } @Override public void registerDestructionCallback(String name, Runnable callback) { } /** 移除指定物件 */ @Override public Object remove(String name) { return FacesContext.