`

JSP架构、开发工具、Web服务器优缺点比较

    博客分类:
  • JSP
阅读更多
JSP架构、开发工具、Web服务器优缺点比较(1)
作者: 海纳百川 出处:51CTO.com  ( 2 ) 砖  ( 0 ) 好  评论 ( 0 ) 条  进入论坛
更新时间:2006-07-24 15:09
关 键 词:JSP
阅读提示:随着技术的日新月异 ,jsp的新技术也层出不穷,为了方面大家的学习与工作,下面将简单的介绍一下JSP的架构、开发工具、Web服务器及其铖缺点。

【51CTO.com综合报道】随着技术的日新月异 ,jsp的新技术也层出不穷,为了方面大家的学习与工作,下面将简单的介绍一下JSP的架构、开发工具、Web服务器及其铖缺点。

架构:

struts:  Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。
除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,比较灵活,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。struts历经6年多的发展,是目前用户数最多、开发团队和社区最火热的框架,适用于中小型项目的快速开发。


tapestry: Tapestry是一个开源的基于servlet的应用程序框架,它使用组件对象模型来创建动态的,交互的web应用。一个组件就是任意一个带有jwcid属性的html标记。其中jwc的意思是Java Web Component。Tapestry使得java代码与html完全分离,利用这个框架开发大型应用变得轻而易举。并且开发的应用很容易维护和升级。Tapestry支持本地化,其错误报告也很详细。Tapestry主要利用javabean和xml技术进行开发,是一个组件式的、事件驱动的框架,理念很先进,想实现类似于桌面程序开发的那种便捷模式。但是它的学习曲线比较陡峭,要花不少时间才能掌握它。它适合大型项目开发,随着组件的积累,开发越到后期可复用的组件越多,开发速度越快。


spring mvc: Spring 的 Web MVC 框架是围绕 DispatcherServlet 设计的,它把请求分派给处理程序,同时带有可配置的处理程序映射、视图解析、本地语言、主题解析以及上载文件支持。默认的处理程序是非常简单的 Controller 接口,只有一个方法 ModelAndView handleRequest(request, response)。Spring 提供了一个控制器层次结构,可以派生子类。如果应用程序需要处理用户输入表单,那么可以继承 AbstractFormController。如果需要把多页输入处理到一个表单,那么可以继承 AbstractWizardFormController。spring提供的东东,使用了spring的IoC,并且也非常强大,但是感觉它比较接近低层,要关注的东西很多。


JSF: JSF负责对客户端设备产生影响,它提供了将表示层、应用层和业务逻辑层整合在一起的工具,但是,JSF的范围被限制在表示层。

以下是JSF Framwork提供最重要的服务。

◆         MVC架构

软件用户总是要操作各种数据,例如,一个潜在用户提交的注册信息,这些数据叫做model。软件开发人员必须将这些数据展现给用户,这就是视图views。在Web应用程序中,HTML文件用于描绘这些数据。

JSF将model和view结合在一起。可以用下面的方式将model属性和view组件绑定:

"#(user.username) "/>

并且,JSF还充当控制器Controller的角色,它可以响应用户的事件(例如,提交数据或者修改了某一个值),将这些事件的数据交由处理model的类以更新model。例如,可以调用一个方法来判断某个用户是否被允许登陆:


◆       数据类型转换

用户在HTML表单输入的都是文本,而我们需要的可能是数字、日期等类型,JSF提供了非常简单的方法用于指定或者自定义数据转换规则。

◆         验证和错误处理

在JSF中可以非常简单的实现诸如“某个字段不得为空”或“某个自动必须为数字”之类的规则。客户还希望在他输入错误数据之后得到适当的提示,JSF提供了完成绝大多数类似任务的方法。

◆         国际化

JSF提供国际化发布管理,解决诸如字符编码和资源文件选择等课题。

◆         自定义组件

◆         可选择的渲染器

缺省的,JSF将tag渲染为HTML格式。但是,也可以非常简单的扩展它,以适应其他渲染要求,比如WML。

◆         工具支持

这个得等。


webwork: Webwork是一个源代码开放的Web应用框架,用于简化基于Web的应用开发。
Webwork的最大优点是它的简单性和灵活性。Webwork有一个很小的API,它使开发者可以迅速进行开发工作。
Webwork是许多特性和适用性的组合,包括使用variour view技术,例如JavaServer Pages(JSP),Velocity,Extensible Stylesheet Language Transformations
Specification(XSLT)和JasperReporters。还有,Webwork对JFreechart有非常好的支持。和struts一样经典的框架,而且比struts更易于使用,但是社群就不如struts那么强大了。


struts2:struts和webwork合并后的东东,还没有正式发布,不知道会不会是个怪胎。

服务器:

这些框架基本不依赖特定的服务器,tomcat、jboss、weblogic都没有问题。


tomcat: Tomcat是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。Tomcat由Apache-Jakarta子项目支持并由来自开放性源代码Java社区的志愿者进行维护。Tomcat Server是根据servlet和JSP规范进行执行的,因此我们就可以说Tomcat Server也实行了Apache-Jakarta规范且比绝大多数商业应用软件服务器要好。做为web容器轻量小巧,如果你不是使用ejb开发,那就可以用它,快速方便。


jboss:JBoss服务器是一种优秀的J2EE服务器,和BEA的Weblogic,IBM的Websphere属于同类产品, JBoss的优势在于具有良好的性价比,实现了所有j2ee的规范和api,支持的标准新,版本快,有开放源码的所有优点,支持热deploy,适合开发环境,尤其是大的团队开发,deploy会拖掉整个团队的效率。文档太少。启动快。  
JBoss为完全开放源码的免费软件,而且具有良好的运行效率和可靠性,因此已经得到越来越多的J2EE应用开发者的青睐。

他其中的web容器就是用tomcat,不过支持了ejb,速度慢一些,不适合开发阶段,可以用于真实运行环境(免费)。


weblogic: WebLogic 是一套基于JAVA功能强大的电子商务套件,提供了许多功能强大的中间件以方便编程人员编写的JSP、SERVLET 等电子商务应用,可以为企业提供一个完整的商务应用解决方案。不适合开发阶段,太慢了,适合于运行环境(收费)。


开发工具:

IBM VisualAge for Java :IBM的Web开发产品可谓同类之中的庞然大物:体积庞大,功能众多;使用对象是整个开发团队;而设计目标则是搞定视野里能看到的一切!

VisualAge for Java是提供了向导功能的第一个Java IDE,它可以生成大量的EJB基础结构代码,从而简化了EJB开发过程。另外,对话和实体beans的创建向导、把beans映射到现有关系数据存储以及先进的测试环境极大地减少了创建、测试和部署EJB所花的时间。


Jbuiler :JBuilder 软件的目标定位是代码开发人员而不是高级设计人员,所以JBuilder中包含了大量的向导程序和其他针对中间层的快速开发工具。JBuilder性能稳定、使用方便,特别适用于创建Java 组件。此外该软件还提供了很多JSP功能。


Jrun :Allaire公司的JRun是一个具有最广阔适用性的Java引擎,用于开发及实施由Java Servlets(JSP)和JavaServer Pages编写的服务器端Java应用。其中Web服务器包括了Microsoft IIS,Netscape Enterprise Server,Apache等。
JRun是开发实施服务器端Java的先进引擎。如果你希望在你的Web应用中添加服务器端Java功能,那么JRun将成为你的正确选择。 

eclipse+myeclipse:几乎可以满足上述所有开发的需要。也可以根据需要找到某个框架的特定插件,但是myeclipse本身就集成了各种插件,更方便易用。

其他相关的技术:
urlrewrite:URL重写转换,让前端用户通过静态路径访问服务,后台自动转为动态路径。
sitemesh:简化页面开发,让页面开发模板化,公用相同的区域。
acegi安全框架:拦截并校验用户访问的url,确定用户是否有权访问。功能不仅如此,很强大。
displaytag:列表显示,自动实现翻页、数据导出等功能。
dtree:树形显示,简单易用。
jfreechat:统计图表生成。
dwr:适合java的ajax开发框架,新版本中实现了服务器推模式,颠覆传统的客户端拉模式。
FCKeditor:网页的所见即所得编辑器,漂亮的外观,多语言支持等,很强大。

(责任编辑:海纳百川 qlmzl11268@hotmail.com   TEL:(010)68476606-8007)

分享到:
评论

相关推荐

    JSP架构、JSP开发工具优缺点比较

    JSP架构、JSP开发工具优缺点比较 随着技术的日新月异 ,JSP的新技术也层出不穷,为了方面大家的学习与工作,下面将简单的介绍一下JSP架构、JSP开发工具、Web服务器及其铖缺点。 JSP架构: struts: Struts跟Tomcat、...

    JSP程序设计实例教程(第2版)-电子课件第1章-Java-Web编程基础.pptx

    1.3 JSP程序体系结构 1.3.1 比较C/S结构与B/S结构 1.3.2 三层架构 1.3.3 两层架构 JSP程序设计实例教程(第2版)-电子课件第1章-Java-Web编程基础全文共73页,当前为第9页。 1.3.1 比较C/S结构与B/S结构 1.C/S结构 C...

    JAVA公共资源模块的设计与开发

    B/S架构的优点在于客户端和服务器通过Intranet进行数据交换,客户端基于统一的WEB浏览器,减少了投资,解决了系统维护升级的问题,另外只有极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端...

    JSP程序设计课件包含Hibernate,Struts的介绍

    它是开源框架:Struts 是 Apache 软件基金会资助的一个为开发基于MVC模式的Web应用而设计的一个开源框架.Struts框架中的各种Web组件:它是利用Servlet、JavaBean和JSP、定制标签库等Web组件、XML等方面的技术来实现...

    jsp+servlet+mysql+学生选课系统(源码+数据库+文档+截图).zip

    随着计算机网络技术发展,Web数据库技术已经成为应用最为广泛的网站架构基础技术在应用系统中,Web提供了与用户进行通信联络的有效手段,利用Web技术,实现Web服务器与数据库系统的连接,完成对数据的处理与查询,用户可以...

    在线考试系统文献综述

    客户浏览器只跟WEB服务器交换数据,数据安全性比较高。当然,B/S结构在网络安全方面也有其弱点。在C/S结构中,应用程序是在客户机上运行的独立程序,如果这台计算机安全的话,那么应用程序就是安全的。而在B/S结构中...

    【计算机软件毕业设计】二手车交易平台的分析、设计与实现文献综述1.doc

    本文在参阅国内 外Web开发技术和Web开发框架及主要几个框架相关文献的基础上,对Web开发框架研究作 了较为全面的总结和梳理,并结合Web开发框架几个主要框架的优劣势进行整合,以期进 一步推进Web应用的发展....

    超市销售管理

    该系统是基于J2EE的技术架构,使用JSP构建动态网页和Servlet组件,使用Tomcat作为web服务器, 用JDBC连接的MySql数据库作为存储对象,在设计和完成的过程中加深对数据库查询方法的理解,也进一步的了解MVC的设计模式。...

    电子商城系统设计实习报告.doc

    web包括:web服务器和web客 户端两部分。Java在客户端的应用有java applet,不过使用得很少,Java在服务器端的应用非常的丰富,比如Servlet,JSP和第 三方框架等等。Java技术对Web领域的发展注入了强大的动力。主要...

    基于J2EE架构的在线考试系统(源代码+论文+开题报告+外文翻译+英文文献+答辩PPT).zip

    前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展而应运而生的一种技术,在这种模式下,客户端需要一个浏览器,服务器端是Web Server ,而Web Server是与数据库和应用服务器的紧密结合,可见,...

    微服务设计与解决方案.docx

    本文将介绍微服务架构的演进、优缺点和微服务应用的设计原则,然后着重介绍作为一个"微服务应用平台"需要提供哪些能力、解决哪些问题才能更好的支撑企业应用架构。 微服务平台也是我目前正在参与的,还在研发过程中...

    千方百计笔试题大全

    22、我们在web 应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 10 23、String 和StringBuffer 的区别? 10 24、String, StringBuffer StringBuilder 的区别。 10 25、...

    java面试宝典

    22、我们在web 应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 10 23、String 和StringBuffer 的区别? 10 24、String, StringBuffer StringBuilder 的区别。 10 25、...

    整理后java开发全套达内学习笔记(含练习)

    比较小数时,用 double i=0.01; if ( i - 0.01 ) ... 不能直接 if (i==0.01)... 默认,整数是int类型,小数是double类型 long类型值,需跟L或l在数据后;float类型要跟f或F;或强制类型转换 科学计数法:12.5E3 ...

    t淘淘商城项目 商城项目 视频和源码教程 详细

    l Nginx(web服务器) 2.4. 开发工具和环境 Eclipse 4.5.0(Mars),自带maven插件,需要手工安装svn插件。 Maven 3.3.3(开发工具自带) Tomcat 7.0.53(Maven Tomcat Plugin) JDK 1.7 Mysql 5.6 Nginx ...

    Java面试宝典2010版

    6、Struts优缺点 优点: 1. 实现MVC模式,结构清晰,使开发者只关注业务逻辑的实现. 7、STRUTS的应用(如STRUTS架构) 8、说说struts1与struts2的区别。 9、hibernate中的update()和saveOrUpdate()的区别,session的...

    最新Java面试宝典pdf版

    6、Struts优缺点 优点: 1. 实现MVC模式,结构清晰,使开发者只关注业务逻辑的实现. 120 7、STRUTS的应用(如STRUTS架构) 121 8、说说struts1与struts2的区别。 121 9、hibernate中的update()和saveOrUpdate()的区别,...

    学生选课管理系统

    对于软件技术要求,现在的JAVA程序设计语言已非常成熟,本系统采用基于B/S 架构的JavaEE的WEB开发,页面采用CSS样式,Jsp,Javascript等页面技术。 (2) 经济可行性-----由于本系统是一个基于JavaEE的WEB应用,所以...

    Java面试笔试资料大全

    6、Struts优缺点 优点: 1. 实现MVC模式,结构清晰,使开发者只关注业务逻辑的实现. 120 7、STRUTS的应用(如STRUTS架构) 121 8、说说struts1与struts2的区别。 121 9、hibernate中的update()和saveOrUpdate()的区别,...

Global site tag (gtag.js) - Google Analytics