、JSP + JavaBeans + Servlet的MVC的三层开发结构(JSP Model 2)
无论用ASP还是PHP开发动态网站,长期以来都有一个比较重要的问题,就是网站的逻辑关系和网站的显示页面不容易分开。常常可以看见一些夹杂着i f . . . . . . t h e n . . . . . .、case select或是i f{ . . . . . . }和大量显示用的HTML代码的ASP、PHP页面,即使是有着良好的程序写作习惯的程序员,其作品也几乎无法阅读。
另一方面,动态Web的开发人员也在抱怨,将网站美工设计的静态页面和动态程序和并的过程是一个异常痛苦的过程。
如何解决这个问题呢?利用Servlet担负起决定整个网站逻辑流程的任务。在逻辑关系异常复杂的网站中,借助于Servlet(Control,也就是调度JSP页面和JavaBean)和JSP(View,也就是实现人机交互的前台界面)良好的交互关系和JavaBeans(Model,实现操作和处理数据)的协助,完全可以将网站的整个逻辑结构放在Servlet中,而将动态页面的输出放在JSP页面中来完成。
在这种开发方式中,一个网站可以有一个或几个核心的Servlet来处理网站的逻辑,通过调用JSP页面来完成客户端(通常是Web浏览器)的请求。在J2EE模型中,Servlet的这项功能可以被EJB取代。
在JSP中使用JavaBean和用Enterprise JavaBean是有区别的。
它们之间的基本相同之处:
- 它们都是用一组特性创建,以执行其特定任务的对象或组件;
- 它们还有从当前所驻留服务器上的容器获得其它特性的能力;
- 都是与平台无关的
它们之间的不相同之处:
- EJB 是部署在服务器上的可执行组件或商业对象,有一个协议允许对其进行远程访问或在特定服务器上安装或部署它们。有一系列机制允许它
们将服务安全性、事务行为、并发性(由多个客户机同时访问的能力)和持久性(其状态可以保存多久)的主要方面授权给EJB 服务器上其所在的容器。
EJB 是设计成运行在服务器上,并由客户机调用的非可视远程对象。可通过多个非可视 JavaBean 构建 EJB。
查看本文来源