网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Java入门笔记1_HelloWorld.
.IBM Java如何做到高性能GC的实现.
.使用BufferedReader读取文件.
.基于.Net的AOP实现技术.
.Java中static、this、super、fin.
.与垃圾收集器(Garbage Collecto.
.开发框架:Java编程中Spring的一.
.Java游戏起步:(二)图形基础和.
.Servlet处理POST请求.
.为RMI实现类Jini的发现机制(1).
.入门基础 Java参数传递方式.
.Java嵌入式开发之j2me--一.
.用Spring framework实现定时器功.
.从File类开始IO系统介绍.
.拒绝代码写手 代码编写的一般性指.
.系统托盘气泡提示和右键菜单的实.
.Enterprise JavaBeans导论1.
.驯服J2SE1.5之从 XML 中装载属性.
.引用 造型 protected和private的.
.[JAVA100例]034、读写文件(字符操.

J2EE设计模式浅谈(1)

发表日期:2008-1-5



  J2EE设计模式浅谈(1)

首先J2EE设计模式还在不断的发展,我以下所说的设计模式全按上图中的来说,一来可以给大家一个更好直观的效果,二来我的目的也只是让各位了解J2EE设计模式,希望可以达到一个抛砖引玉的效果。
在还没有进入正题之前我还想说几句,大家不要为了用design pattern而去用design pattern,最好根据自己的需求去选择适合自己项目的design pattern。
J2EE有两大类重要的J2EE模式,一类由Sun Java Center治理,定义15种模式,已经在《Core J2EE Patterns》书中发表,另一类是TheServerSide.Com,这种类发表了大量的模式,最重要的见《EJB Design Patterns: Advanced Patterns,Processes and Idioms》下面我们把design pattern分层说明
1、 表示层模式,用于Web组件层
2、 业务层模式,用于业务逻辑层
3、 数据集成层模式,连接DB Or EIS

Intercepting Filter(截获过滤)
提供请求预处理和后处理的方案,定义灵活的体系结构,可以声明对截获请求和响应进行过滤,在Servlet2.3中已经实现了Filter功能,该模式主要用于记录日志、看用户有没有LOGIN等等。
Front Controller(前端控制器)
通过中心控制器提供请求治理和处理。控制器取代通常发生在表示层的请求,从而取代模型试图控制器(MVC ,Model View Controller)模式的控制器部分,前端控制器治理内容的读取,导航。如上图,可看出Front Controller是系统的一个入口,由他调用相应的逻辑Bean,完成相应的处理工作后,更新视图View,在这里我还想提醒大家一下,有的应用把更新视图(View)的工作交给了相应的逻辑Bean来完成。
View Helper(视图帮助器)
将负责表示层的逻辑代码与其他的业务逻辑分开,表示格式放在视图组件中去,可能包括多个子组件,组成复杂视图。业务逻辑代码放在帮助器组件中。说白了就是让我们不要在视图(View)中写入业务逻辑代码,即少写一些Scriptlet。
Composite View(复合视图)
是从原子组件创建累计表示(View)的灵活方案。表示体系结构可以方便地组织基本视图组件,使表示灵活,还可以进行其他的工作,包括个性化和定制。
Dispatcher View(派遣视图)
类似于Service to Worker模式,是由Dispatcher组件与Front Controller和View Helper模式组合而成。它与Service-to-Worker模式不同的是,这个模式在进行视图处理期间进行请求处理,因此更适合小型应用程序。
Service to Worker(服务/工人)
它是由Dispatcher组件与Front Controller和View Helper模式组合而成,先进行请求处理再进行视图处理,适合用于大型应用。

由于Dispatcher View与Service-to-Worker有很多的相似之处,在此我做一下比较与说明,
1、 他们都是由表示层模式(Front Controller、View Helper)组合而成,参与者是控制器、派遣器、视图帮助器的组合。
2、 在Service-to-Worker模式中控制器、派遣器的功能很大,除了要处理客户请求,视图跳转,派遣器还要从业务层读取数据,视图负责表示派遣器读取数据,将更多的逻辑和行为移到Front Controller、Dispatcher、View Helper中简化视图(View)。
3、 而在Dispatcher View模式中控制器、派遣器的作用则很小,视图要负责从业务层读取内容和显示数据,它将更多的逻辑和行为交给了视图(View)使我们的视图变的很复杂,通常要用Scriptlet或Taglib完成控制器没有完成的任务。
上一篇:在JSE环境使用HibernateEntityManger 人气:586
下一篇:IT人才风向标之java——java人才现状大调查结果出炉 人气:635
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐