面向对象设计模式在B_S架构Web应用中的运用.pdf

面向对象设计模式在B_S架构Web应用中的运用.pdf

ID:52443750

大小:251.99 KB

页数:5页

时间:2020-03-27

面向对象设计模式在B_S架构Web应用中的运用.pdf_第1页
面向对象设计模式在B_S架构Web应用中的运用.pdf_第2页
面向对象设计模式在B_S架构Web应用中的运用.pdf_第3页
面向对象设计模式在B_S架构Web应用中的运用.pdf_第4页
面向对象设计模式在B_S架构Web应用中的运用.pdf_第5页
资源描述:

《面向对象设计模式在B_S架构Web应用中的运用.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第28卷第8期武汉理工大学学报·信息与管理工程版Vol.28No.82006年8月JOURNALOFWUT(INFORMATION&MANAGEMENTENGINEERING)Aug.2006文章编号:1007-144X(2006)08-0042-05面向对象设计模式在BöS架构Web应用中的运用苏飞,张能立(武汉理工大学计算机科学与技术学院,湖北武汉430070)摘要:模式已成为收集、规范和分析某些情景中常见问题的有效方法。介绍了Web应用开发中常用的一些设计模式,及如何应用这些模式建立高质量的应用程序,并结合实际应用介绍了这些模式。同时还有针

2、对性地列举了一些实用代码,详细阐述了开发中的常见问题及其解决方案。关键词:面向对象;设计模式;可扩展;可重用;MVC中图法分类号:F221文献标识码:A密联系在一起,后台数据库的微小变化都会造成1引言这些DAO类大量改动。这里,把抽象工厂模式引著名建筑师CHRISTOPHERA研究发现,入到数据访问层的设计中,实现业务逻辑层与数在不同时代建筑师留下的伟大建筑作品中,有很据访问层完全分离。使得DAO类的改动不会波及多重复出现的设计,于是,他找到了一种结构化、业务逻辑层而导致整个系统从头开发。可重用的方法来捕捉并描述这些重复的设计,还笔者在亿唐“动物

3、小仙(台湾版)”网站的开发[1]给这些描述的结果起名为模式。设计模式就是中采用了这种设计思想。在整个系统中,逻辑层要将系统开发中的成功经验法则归纳整理以便再利想得到数据层中某个DAO类的实例,必须通过抽用的一种经验的结晶,可以让系统开发者避免不象工厂DAOFactory来获得,抽象工厂再调用具必要的错误尝试。在软件开发中对好的成果进行体工厂的工厂方法生成DAO类的实例返回给逻重复使用,不但可以节省劳动,而且有利于保证质辑层,这样就实现了数据层和逻辑层的完全分离,量、缩短工期、减少花费和降低风险。当数据层的DAO类发生改变时不会对逻辑层产面向对象语

4、言是当今计算机语言的主流,而生任何影响。同时,对于初始化开销很大的DAO设计模式是面向对象思想的精华。利用设计模式,类,还可以在工厂类里面为它设计缓存,把第一次可以构建可重用,易扩展,易维护的软件系统,缩初始化生成的对象放入缓存供以后重用,这样也减系统开发时间,提高系统开发质量,改善系统性可以在一定程度上提高系统性能。下面是几个核能。笔者总结了应用开发中常用的一些设计模式,心类的具体代码:描述了设计模式的理念及如何在基于Web的多publicclassDAOFactory层应用系统中利用设计模式来改善系统性能,提{高系统的重用性,扩展性和可维护性

5、。privatestaticDAOFactoryfactory=null;privatestaticObjectlock=newObject();2设计模式在多层Web应用中的运用privateStringdatabase;2.1抽象工厂模式与数据层的分离privateXMLDAOFactoryxmlfactory=null;在当今流行的三层体系结构的Web应用中,privatestaticLoggerlog;数据访问层中存在着大量的DAO(DataAccessprivateDAOFactory()Object)对象。这些DAO跟后台的数据库系统

6、紧{收稿日期:2006-02-09.作者简介:苏飞(1979-),男,湖北监利人,武汉理工大学计算机科学与技术学院硕士研究生.第28卷第8期苏飞,等:面向对象设计模式在BöS架构Web应用中的运用43öö在web.xml中读取设置的持久层参数öö其他工厂方法xmlfactory=newXMLDAOFactory();}try{2.2单例多例模式与序列键生成器log=Logger.getLogger("DAO");单例模式也称为单态模式,这里所指的单态database=(String)newInitialContext并不同于状态模式所指的一个类只

7、有一个状态().lookup("java:compöenvöpersistentlayer");(状态一旦生成就不可以改变),单例模式所指的database=database.trim();单态是指所有用户都共用这个类的状态,这有点}类似于Java类中的static字段。之所以能达到这catch(NamingExceptione){⋯}种效果,是因为单例类在整个内存中只有一个实}例,所以这个模式翻译为单例比单态更加合理。ö3DAOFactory是一个单例类,下面是静单例模式经常用于需要在系统中大量实例化态实例化方法3ö且不需要针对某个用户保存其特

8、定状态的类。这publicstaticDAOFactorygetInstance()样可以节省不少内存空间。有一些数据库没有增{量式主键

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。