您的位置:首页 > 编程语言 > Java开发

Struts+Hibernate模板开发笔记---设计模式:门面

2005-06-04 17:05 676 查看
  
1.在JSP中调"Session Facade"类
在JSP文件中插入下列标签:
<jsp:useBean id="sessionBean" scope="session"
class="com.company.demo.web.SessionBean" />
2.SessionBean类
package com.company.demo.web;

import com.company.demo.datamodule.*;
import com.company.demo.thread.*;
import com.company.demo.facade.*;
/**
* <p>Title: Struts+Hibernate开发模板</p>
* <p>Description: 通用开发模板</p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: 优势科技</p>
* @author 段洪杰
* @version 1.0
*/
public class SessionBean {
private DataModule dataModule;//数据模型
private Auth auth;  //登录的用户信息
private Business business; //系统中的业务逻辑主线
private Line line; //保存模块中的关联状态
/**
* 构函数,初始化业务逻辑中的类(单例)
*/
public SessionBean(){
try {
dataModule=SessionBeanSingletonFactory.getDataModule();
auth=SessionBeanSingletonFactory.getAuth();
business=SessionBeanSingletonFactory.getBusiness();
line=SessionBeanSingletonFactory.getLine();
}
catch (Exception ex) {
ex.printStackTrace();
}
}
/**
* 门面模式调用的公共应用模块
* @return Utility
*/
public Utility getUtility()  {
return SessionBeanFactory.getUtility();
}
}
3.SessionBeanFactory类
package com.company.demo.web; import com.company.demo.datamodule.*;
import com.company.demo.thread.*;
import com.company.demo.facade.*;
import net.sf.hibernate.HibernateException;
/**
* SessionBean门面模式的抽象工厂类
* <p>Title: Struts+Hibernate开发模板</p>
* <p>Description: 通用开发模板</p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: 优势科技</p>
* @author 段洪杰
* @version 1.0
*/
public class SessionBeanFactory {
/**
* 生成业务逻辑状态实例(facade)
* @return LineImpl
* @throws HibernateException
*/
private SessionBeanFactory(){}
public final static Utility getUtility(){
return new UtilityImpl();
}
}
4.SessionBeanSingletonFactory类
package com.company.demo.web; import com.company.demo.datamodule.*;
import com.company.demo.thread.*;
import com.company.demo.facade.*;
import net.sf.hibernate.HibernateException;
/**
* <p>Title: Struts+Hibernate开发模板</p>
* <p>Description: 通用开发模板</p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: 优势科技</p>
* @author 段洪杰
* @version 1.0
*/
public class SessionBeanSingletonFactory {
/**
* 生成用户认证实例(单例)
* @return AuthImpl
* @throws HibernateException
*/
private SessionBeanSingletonFactory(){}
public final static Auth getAuth() throws HibernateException{
return new AuthImpl();
}
/**
* 生成商务逻辑实例(单例)
* @return BusinessImpl
* @throws HibernateException
*/
public final static Business getBusiness() throws HibernateException{
return new BusinessImpl();
}
/**
* 生成数据模型实例(单例)
* @return DataModuleImpl
* @throws HibernateException
*/
public final static DataModule getDataModule() throws HibernateException{
return new DataModuleImpl();
}
/**
* 生成业务逻辑状态实例(单例)
* @return LineImpl
* @throws HibernateException
*/
public final static Line getLine() throws HibernateException{
return new LineImpl();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: