Java技术是一个体系,主要包含三个部分:J2SE(标准版)、J2EE(企业版)、 J2ME(移动版)。
当然这其中应用最为广泛的当属J2EE。
java的客户端也可以分成两种,一种是软件交互形式(Client/Server,C/S模式),主要由J2SE完成;另一种是浏览器交互形式(Browser/Server,B/S模式),主要由J2EE实现。(XML作为数据传输方式,不属于数据表现层,不算是客户端)
J2EE的表现层主要是jsp技术(当然,表现层实际中还会包含html,css,javascript客户端脚本及其类库,flash平台应用等)。
Java的B/S模式架构具体可有以下几种组合:
1. jsp
纯jsp+html+JavaBean就可以实现简单的B/S架构,类似于基于php的WordPress博客程序,比较简单方便。在html代码中混合jsp代码,直接在页面通过dao访问数据库,得到数据并显示。
2. jsp+Servlet
这是基于MVC(Model-View-Control,模型-视图-控制)的一种架构。jsp作为视图层(表现层),Servlet作为Control层,负责处理请求分发,是业务逻辑层,Model层则是JavaBean,负责数据的封装及与视图层的交互。
3. jsp+Struts
Struts(Struts1.2)实现了对请求分发的统一配置管理,Action通过单例模式,减少了服务器内存消耗;ActionValidateForm实现了表单的预处理和服务器端验证,提高了安全性。
4. jsp+Struts+Spring+Hibernate
Spring常见的模块是IOC和AOP,Spring IOC基于控制反转思想的一种新架构,通过配置文件统一配置,进行属性注入,实现了软件基于组件的可插拔,极大地降低了业务逻辑层与JavaBean的耦合度;Spring AOP是面向方面编程的一种实现,通过代理模式实现了强大的事务管理。
5. jsp+Struts+Spring+EJB
EJB是Enterprise JavaBean的缩写,是一种SOA(面向服务架构),通过向用户提供统一接口(service抽象接口),用户可以通过该接口访问服务,实现RMI(远程方法调用),并且对用户屏蔽了数据库的细节和具体函数,保证了服务器端的数据安全。
其实,采用各种框架带来了一些执行效率上的问题,但是在J2EE项目中,用户的需求不断改变,企业只有通过采用成熟的框架,降低开发成本,提高代码重用性,才能在市场中生存。框架让程序员可以把精力更多地放在业务逻辑层,开发出复杂业务逻辑的行业方案,比如医疗、财务。
注:
以上只是常见的几种技术(框架)组合,实际中可有其它选择;以上的组合中均应包含JavaBean,如vo(po)、dao、factory等,由于JavaBean也可重用于C/S模式,故没有将之包含在内;B/S模式一般还应该包含数据库。
– EOF –
原帖地址:http://hi.baidu.com/csu%C5%E5%E8%A4/blog/item/c2bf9dc65c8048d1d0006059.html