那是一段如此自以为是,又如此狼狈不堪的青春岁月。
有欢笑,也有泪水;有朝气,也有颓废;
有甜蜜,也有荒唐;有自信,也有迷茫。



Web开发框架--笔记整理

一个好的Web开发框架应该具备以下几点:

  1. 减轻开发者处理复杂问题的负担;
  2. 内部有良好的扩展;
  3. 并且有一个支持它的强大的用户团体。
image

三层架构:表示层、业务层、持久层。即Struts2+Spring2+Hibernate3。

表示层(The Presentation Layer)

表示层使用Struts2。 Struts2和Struts1.x的差别主要是Struts1.x 必须继承org.apache.struts.action.Action或者其子类,表单数据封装在FormBean中。而Struts 2无须继承任何类型或实现任何接口,表单数据包含在Action中,通过Getter和Setter获取,就是说struts2不需要formBean。另外,struts2的Action测试不用依赖于servlet容器。

下面是Struts所负责的:

* 管理用户的请求,做出相应的响应。

* 提供一个Controller ,委派调用业务逻辑和其它上层处理。

* 处理异常

* 为显示提供一个模型

* UI验证。

持久层(The Persistence Layer)

持久层通常是程序最容易失控的地方。开发者总是低估构建他们自己的持久框架的挑战性。Hibernate为java提供了ORM持久化机制和查询服务, 它还给已经熟悉SQL和JDBC API 的Java开发者一个学习桥梁,上手很方便。 Hibernate的持久对象是基于POJO和Java collections。象Hibernate这类的高级ORM框架支持大部分主流数据库,并且他们支持 Parent/child关系,事物处理,继承和多态。此外,使用Hibernate并不妨碍你正在使用的IDE。

业务层(The Business Layer)

业务层从编码的视角来看,是最容易被忽视的一层。而我们却往往在UI层或持久层周围看到这些业务处理的代码,这其实是不正确的,因为它导致了程序代码的紧密偶合,很难维护。Spring它着手于‘依赖注射’(dependency injection)(还有我们知道的‘控制反转’Inversion of Control=IoC)这样的简单概念。 Spring把程序中所涉及到包含业务逻辑和Dao的Objects——例如transaction management handler(事物管理控制)、Object Factoris(对象工厂)、service objects(服务组件)——都通过XML来配置联系起来。

0 Comments: