签。因此问题变成为什么使用JSP而不使用其他技术呢我们的第一反应是我们不是在争论所有的人应该做什么。其他这些技术中有一些也很不错在某些情况下也的确是合情合理的选择然而在其他情形中JSP明显要更好一些。下面给出几个理由。与NET和ActiveServerPagesASP相比NET是Microsoft精心设计的一项技术。ASPNET是与servlets和JSP直接竞争的技术。JSP的优势体现在两个方面。首先JSP可以移植到多种操作系统和Web服务器您不必仅仅局限于部署在Wi
dows和IIS上尽管核心NET平台可以在好几种非Wi
dows平台上运行,但ASP这一部分不可以。您不能期望可以将重要的ASPNET应用部署到多种服务器和操作系统。对于某些应用,这种差异没有什么影响。但有些应用,这种差异却非常重要。其次,对于某些应用,底层语言的选择至关重要。例如,尽管NET的C语言设计优良,且和Java类似,但熟悉核心C语法和众多工具库的程序员很少。此外许多开发者依旧使用最初版本的ASP。相对于这个版本JSP在动态代码方面拥有明显的优势。使用JSP动态部分是用Java编写的而非VBScript过其他ASP专有的语言因此JSP更为强劲更适合于要求组件重用的复杂应用。当将JSP与之前版本的ColdFusio
对比时,您可能会得到相同的结论。
f应用JSP,您可以使用Java编写“真正的代码”,不必依赖于特定的服务器产品。然而,当前版本的ColdFusio
满足J2EE服务器的环境,允许开发者容易的混合使用ColdFusio
和ServletJSP代码。与PHP相比PHP(“PHP:HypertextPreprocessor”的递归字母缩写词)是免费的、开放源代码的、HTML嵌入其中的脚本语言,与ASP和JSP都有某种程度的类似。JSP的一项优势是动态部分用Java编写,而Java已经在联网、数据库访问、分布式对象等方面拥有广泛的API,PHP需要学习全新的、而应用相对广泛的语言。JSP的第二项优势是,和PHP相比,JSP拥有极为广泛的工具和服务器提供商的支持。与纯Servlet相比原则上,JSP并没有提供Servlet不能完成的功能。实际上,JSP文档在后台被自动转换成Servlet。但是编写(和修改)常规的HTML,要比无数pri
tl
语句生成HTML要方便得多。另外,通过将表示与内容分离,可以为不同的人分配不同的任务:网页设计人员使用熟悉的工具构建HTML,要么为Servlet程序员留出空间插入动态内容,要么通过XML标签间接调用动态内容。这是否表示您只可以学习JSP,将Servlet丢到一边呢?当然不是!由于以下4种原因,JSP开发人员需要了解Servlet:(1)JSP页面会转换成Servlet。不了解Servler