理解WEB层

WEB层应该是一个很干净的层和很薄的层。控制流和业务调用与视图显示必须分离出来。Java类用来控制流程和进行业务调用,不应该在Java类中生成HTML等视图标签。JSP页面等视图仅包含显示标签和简单的显示逻辑。

    其一,WEB层应该只含有需要的控制逻辑,而不应该有业务逻辑。因为WEB依赖于Servlet API。Servlet 是很难以进行单元测试的,而WEB层含有业务逻辑,所以业务逻辑依赖于Servlet API,业务逻辑就很难以进行测试。对比之下,如果由一个普通的JAVA对象来实现业务逻辑,则十分容易进行单元测试。

    其二,降低了代码的可重用性。Servlet的代码是很难以进行重用的,即使是使用委托对象进行流程控制的WEB层,如果一个普通Java对象的业务对象去调用一个依赖于Servlet 的控制类,就对原本干净的业务对象深度侵入而破坏业务接口。

    其三,WEB层的变化是频繁的,而业务层的则是相对稳定的。通常业务对象是面向接口的。可能WEB层的修改而导致业务逻辑的错误。

    其四,无法进行统一的事务处理。如果业务对象是普通的JAVA对象,则可以通过AOP等来进行声明式事务管理,从而进行统一的事务处理。

    以上就是我的WEB学习经历,也是最重要的一段经历。可在这里为什么不提 SPRING MVC,WEBWORK和将会流行的JSF呢?其实它们都是基于JSP及Servlet的运用,相信有扎实的JAVA基础,深入的理解JSP,Servlet,HTML比学习任何框架都要重要。我在这里并不是反对学习WEB框架或者是反对运用框架进行开发,而是说这些基础的学习可以让你能够更快的掌握一个新的WEB框架。理解WEB 开发及WEB层的特点,可以让你更好的进行WEB开发。

    就算是像ASP.NET和JSF号称的事件驱动模型,最终它也没有脱离开WEB应用的特点,它们仍然是请求响应模式。它们只是通过提供丰富的WEB组件及可视化的IDE使得WEB开发像桌面应用开发一样。总之,掌握Web开发的关键是掌握Web应用的特点及Web应用的关键技术,而不是掌握一两个框架。所以花费些力气去学习Java基础,学习Jsp,Servlet,甚于学习HTML,Javascript对进行Web开发都是十分必要的,因为磨刀不误砍柴功。
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值