JSP和servlet技术
sevlet和JSP其实是完全统一的,二者在底层的运行原理是完全一致的。实际上,JSP必须被Web服务器编译成servlet,真正在web服务器内运行的是servlet.广义的servlet包含了JSP和servlet。
目前,纯粹的servlet已经很少使用了,因为servlet开发成本太高,同时使用servlet充当表现层将导致表现层页面难以维护,不利于美工人员参与servlet开发。因此实际开发中大都使用JSP充当表现层技术。
JSP只负责简单的显示逻辑,中间层的组件会将应用底层的状态信息封装成JavaBean集来传输数据,这些JavaBean也被称为DTO(Data Transfer Object,数据传输对象),中间层的组件将这些DTO集传到JSP页面,从而让JSP可以显示应用底层的状态。
在目前阶段,Java EE应用除了可以使用JSP作为变现层技术之外,还可以使用FreeMarker或Velocity充当表现层技术,可替代JSP。
Struct技术
Struct是全世界最早的MVC框架。
Struct 2结合了Structs和WebWork两者的精华。
在MVC框架领域有两个替代者:JSF和Tapestry。
JSF是Sun推荐的Java EE规范,拥有最纯正的血统,同时Apache也为JSF提供了MyFaces实现。JFS采用传统RAD(快速应用开发)理念。Tapestry完全脱离了传统的servlet API,是一种纯碎的、组件式的MVC框架,提供了控制器和页面模板的解决方案,使用Tapestry无需使用JSP等其他表现成技术。
Hibernate技术
Hibernate框架是一种开源的、轻量级的ORM框架,允许将普通的、传统的Java对象(POJO)映射成持久化类,允许应用程序以面向对象的方式来操作POJO,Hibernate框架负责将这些操作转换成底层的SQL操作。
替换:iBATIS是Apache组织提供的另一个轻量级持久层框架,iBATIS允许将SQL语句映射成对象。iBATIS常常被称为SQL Mapping工具。同时,Oracle的TopLink、Apache的OJB都可以作为Hibernate的替代方案。
Spring技术
Spring框架里充满了各种设计模式的应用,如单例模式、工厂模式、抽象工厂模式、命令模式、职责链模式、代理模式等。Spring本身提供了一个设计优良的MVC框架:SpringMVC。但是Spring并没有提供完整的持久层框架,Spring可以与大部分持久层框架无缝整合:Hibernate,JPA,iBATIS,TopLink,或者直接使用JDBC。
使用框架的目的是为了:可维护性和复用。