servicewrapper.java
来自「社区文章采用的是平板、树形自由选择的两种展示方式」· Java 代码 · 共 58 行
JAVA
58 行
/*
* Created on 2007-1-18
* Last modified on 2008-1-1
* Powered by YeQiangWei.com
*/
package com.yeqiangwei.club.service;
import com.yeqiangwei.cache.Cache;
import com.yeqiangwei.club.cache.CacheRegion;
import com.yeqiangwei.cache.singleton.CacheFactory;
import org.apache.log4j.Logger;
import com.yeqiangwei.util.Validator;
public class ServiceWrapper<ServiceObj>{
private static final Logger logger = Logger.getLogger(ServiceWrapper.class);
private static int HIT = 0;
static class ServiceSingleton<ServiceObj> {
static <ServiceObj> ServiceObj getService(String locator) {
return ServiceWrapper.<ServiceObj>getServiceManager().getService(locator);
}
}
public static<ServiceObj> ServiceObj getServiceInstance(String locator) {
return ServiceWrapper.<ServiceObj>getSingletonInstance(locator);
}
public static<ServiceObj> ServiceObj getSingletonInstance(String locator) {
Cache<ServiceObj> CACHE_SERVICE = CacheFactory.<ServiceObj>creator(CacheRegion.SERVICE);
ServiceObj service = CACHE_SERVICE.get(locator);
if(Validator.isEmpty(service)){
service = ServiceSingleton.<ServiceObj>getService(locator);
CACHE_SERVICE.put(locator,service);
HIT = 0;
}else{
HIT++;
}
return service;
}
public static<ServiceObj> ServiceManager<ServiceObj> getServiceManager() {
Cache<ServiceManager<ServiceObj>> CACHE_SM = CacheFactory.<ServiceManager<ServiceObj>>creator(CacheRegion.SERVICE);
ServiceManager<ServiceObj> SERVICE_MANAGER = CACHE_SM.get("com.yeqiangwei.club.service.ServiceManager");
if(Validator.isEmpty(SERVICE_MANAGER)){
SERVICE_MANAGER = new ServiceImpl<ServiceObj>();
CACHE_SM.put("com.yeqiangwei.club.service.ServiceManager",SERVICE_MANAGER);
logger.info("create: com.yeqiangwei.club.service.ServiceManager");
}
return SERVICE_MANAGER;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?