Java Web Application的最新技术比较与体会

 

Java Web Application的最新技术比较与体会

作者:bwwlpnn

关于用Java 来实现Web Application的最新技术,我想不妨从Open Source 的 Portal 实现 -- Jetspeed (http://jakarta.apache.org/jetspeed/site/index.html) -- 作为一个起点。

* Jetspeed 的技术核心是 Turbine 和 Velocity

* Jetspeed 本身不是一个Web Application Server, 不能独自运行,而是以.WAR文件的形式 deploy 到某一个Web Application Server 上才能运行。Tomcat是Jetspeed的开发平台,理论上Jetspeed能运行在任何支持Servlet 2.2/2.3的Web Application Server上。我已经能够把Jetspeed 运行在WebLogic 6.1 sp2 上了,当然要做一些必要的配置。

* Jetspeed 只是开发 Web Application 的一个前端(front end)的framework,是建立在Servlet的基础上的。EJB是开发 n-tier applications 的后端(back end)的framework. 两者可以很好地结合在一起来应用。

* Turbine vs. Struts: 两者都实现了MVC中的view 和 controller的要求。只不过Turbine 在 view 的实现上主要采用了 Velocity, Turbine能支持JSP,但是支持的不好,且不推荐使用JSP (详见下文);Struts 在 view 的实现上只采用JSP。如果要实现controller, 两者不能同时使用。即在一个Web Application中只能用Turbine或Struts两者之一来实现controller. 当然,对于view的实现,两者应该可以同时使用。

* Velocity vs. JSP: 两者都是实现同一功能的template languages. JSP 是 Sun 的标准,Velocity是 Open Source 开发的系统。网上有几篇详尽的文章 (
http://jakarta.apache.org/velocity/ymtd/ymtd.html) 比较两者的异同,由于是Open Source写的,当然偏向Velocity喽。不过我详细读过一遍,文章写得有理有据,全都是developer的经验,并没有推销Velocity之嫌。每篇文章后都有一句:You make the decision. 在Open Source 看来,JSP 是 Sun 开发的一个"不好用"的产品。"不好用"主要体现在: 难于Debug; 没有必要地把简单问题复杂化, 如JSP的先编译再运行;不能防止用户将Java code 嵌入JSP, 从而破坏MVC的设计. 并且Sun 将JSP冠之以"Standard",有“胁天子以令诸侯”之嫌。当然,Struts和Tag Lib将Java code 从JSP中剥离,挽救了JSP。Sun为了保住JSP这个"Sun proprietary product", 只好求助于Struts这棵"救命草".

* 如果不用于Jetspeed portlet的开发,Turbine也是一个很好的开发Web Application的Framework. 全世界30多个developers 经过3 年的开发,将Web Application开发中有共性的问题提出并加以解决。从这个角度看,Turbine 比 Struts 涵盖的范围要多得多。关于Turbine能做什么,可以参考:http://jakarta.apache.org/turbine/turbine-2/services.html ,这个URL列举了Turbine 27个 services, 其中Castor Service 能做 object to relational mapping (OR mapping)。在这些Services之间,和Turbine 与 Web Application 之间都是松耦合(decoupling)的,可以方便地使用。从大的角度看,Turbine 能做:
As a servlet framework with Turbine as the controller.
As a framework of useful code in your application.
As a Object-Relational Tool.
* 掌握Turbine/Velocity要花一些时间,但是从开发Java based Web Application的长远角度来看,花些时间还是值得的。毕竟吸取全世界30多个developers 经过3 年的开发的经验比自己re-invite the wheel强。

先写到这,以后我有什么体会,会继续和大家分享

展开阅读全文
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

提供典型应用案例,剖析JSP/Servret技术Struts 2技术Web开发中不同 提供完整应用案例,使读者可以深入体会SSH开发模式精髓 所有开发工具和框架均使用目前最新版本,紧跟技术发展趋势 提供230个实例和4个综合案例,可以作为案头必备查询手册 一线开发人员全力打造,分享技术盛宴! 重点内容及特色 《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》介绍了Web开发中客户端技术基础知识,包括JavaScript、CSS、AJAX等,这些技术都是Web应用中常用客户端技术。 《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax+》讲解了JSP/S rvlet技术基础知识,并提供了一个综合案例展示其具体应用,它们是Java Web服务端技术基石,也是学习Java Web开发所要必须掌握技术。 《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架基础知识和高级技术,如Sruts 2中*、类型转换、国际化和标签等,HIbe rna{e会话、0/R映射和事务管理等,Spring中数据库技术AOP等。 《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》特别介绍了Struts 2对AjAX支持,还重点剖析了SSH框架整合开发,并给出了两个综合案例来展示整合SSH框架开发Web应用。 和已经出版同类图书相比,《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》讲解由浅入深,涵盖更多内容,列举了大量典型实例具有超强实用性,另外,《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》各篇独立,适合读者全面学习或对部分内容重点学习。 读者对象 有Java基础,想进一步学习SSH框架整合开发人员 了解SSH整合开发,想进一步提高开发技术人员 正在使用SSH整合技术开发项目,想查阅资料人员 大中专院校学生和老师,以及Java培训班学员和讲师 需要一本案头必备查询手册程序员 光盘内容 6小时多媒体体视频讲解 《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》所涉及源代码 布衣暖,菜根香,好书滋味长!清华大学出版社长期以来一直秉承为读者多出好书宗旨,多年来为读者奉献了大量脍炙人口精品图书。尤其在计算机图书出版领域更是形成了鲜明特色,所出版各类计算机图书受到了广大读者好评。本次出版“原创经典,程序员典藏”系列图书是清华大学出版社重点精品计算机图书,旨在帮助读者全面学习各类程序设计语言和开发工具,提高开发水平。同时也为广大程序员提供良好技术参考,以便作为案头必备查询手册。 内容提要 -------------------------------------------------------------------------------- 《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》通过对SSH中各种技术循序渐进地讲解,使读者尽快掌握开发基于SSHWeb程序方法。《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》内容包括Web客户端技术JSP/Servlet技术Struts 2(*、类型转换、输入校验、上传和下载文件、Struts 2各种标签、对 AJAX支持等)、Spring(Ioc容器、装配Java Bean、Jdbc和Hibernate模板、事务管理、Spring AOP等)以及 Hibernate(会话、映射、标准查询API、HQL、事务管理、锁等)。除此之外,《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》还提供了两个完整实例来讲解开发SSH详细步骤和方法。通过对这两个实例学习,读者可以对SSH开发模式有更透彻地理解和认识。SSH是目前最流行Java Web开发技术。 《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》适合广大从事Java Web开发工作技术人员、对SSH开发感兴趣
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值