📄 localserviceimpl.java
字号:
package cn.com.chhd.fw.svc;
import java.util.HashMap;
import org.apache.log4j.Logger;
import cn.com.chhd.fw.open.IService;
import cn.com.chhd.fw.open.ServiceException;
import cn.com.chhd.fw.open.ServiceSession;
/**
* 应用服务接口实现.
* <p>
* Copyright: Copyright (c)2006 ShHTL
* </p>
*
* @author Hemingrui
* @version 1.0 $History: $
*
*/
public class LocalServiceImpl implements IService {
private ServiceContext context = null;
/**
* 操作会话认证
*
* @param session
*/
public boolean authentication(ServiceSession session) throws Exception {
context = new ServiceContext();
context.setSession(session);
return context.isPassed;
}
private void checkSession() throws Exception {
if (null == context || !context.isPassed) {
throw new ServiceException("100102");
}
}
/**
* 查询应用
*
* @param id
* @param obj
* @return
* @throws Exception
*/
public Object load(String id) throws Exception {
checkSession();
LocalService infoSvc = ServicesHolder.findSvc(id);
infoSvc.proTreat(context);
return infoSvc.query();
}
/**
* 查询应用
*
* @param id
* @param obj
* @return
* @throws Exception
*/
public Object load(String id, Object obj) throws Exception {
checkSession();
LocalService infoSvc = ServicesHolder.findSvc(id);
infoSvc.proTreat(context);
return infoSvc.query(obj);
}
/**
* 新添应用
*
* @param id
* @param obj
* @throws Exception
*/
public void add(String id, Object obj) throws Exception {
checkSession();
LocalService infoSvc = ServicesHolder.findSvc(id);
infoSvc.proTreat(context);
infoSvc.insert(obj);
}
/**
* 修改应用
*
* @param id
* @param obj
* @throws Exception
*/
public void modify(String id, Object obj) throws Exception {
checkSession();
LocalService infoSvc = ServicesHolder.findSvc(id);
infoSvc.proTreat(context);
infoSvc.update(obj);
}
/**
* 删除应用
*
* @param id
* @param obj
* @throws Exception
*/
public void remove(String id, Object obj) throws Exception {
checkSession();
LocalService infoSvc = ServicesHolder.findSvc(id);
infoSvc.proTreat(context);
infoSvc.delete(obj);
}
/**
* 执行指定操作.
*
* @param id
* @param obj
* @return
* @throws Exception
*/
public Object execute(String id, Object obj) throws Exception {
checkSession();
LocalService infoSvc = ServicesHolder.findSvc(id);
infoSvc.proTreat(context);
return infoSvc.execute(obj);
}
}
/**
*
* @author hemingrui
*
*/
class ServicesHolder{
public static HashMap<String, LocalService> _svcDicts = new HashMap<String, LocalService>();
static Logger logger = Logger.getLogger(ServicesHolder.class);
/**
* 查询服务.
* @param id
* @return
* @throws ServiceException
*/
public static LocalService findSvc(String id) throws ServiceException{
if(_svcDicts.containsKey(id)){
return (LocalService)_svcDicts.get(id);
}else{
try{
LocalService svc = (LocalService) Class.forName(id).newInstance();
_svcDicts.put(id, svc);
return svc;
}catch(Exception ex){
logger.error("没有找到服务类:" + id);
throw new ServiceException("100104");
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -