前言:在进入Java后端的修炼之路之前,让我们先认清一些可能模糊的概念,以及与Java语言同在的其他语言的一些小知识。下面开始吹吹水,可以快速看看:
一、一些概念:
- 经典框架组合 SSH(structs + Spring + Hibernate)比较新潮的组合SSJ(Struts2 + Spring2 + JPA)
- MVC(Model- View- Control)三层模式, Control层又分为两层:DAO层与 Service
- J2EE:Java的企业版本,Sun公司提出
- J2ME:针对嵌入式设备,如手机等。J2ME出现之前, 嵌入设备只能用C/C++方式实现编程。
二、Web服务器汇总
- IIS:微软提供的一种Web服务器。本身支持ASP,加上插件则支持PHP。
- Apache服务器:Apache基金组织提供的一种Web服务器。特长是处理静态页面(处理静态页面的效率高)
- Tomcat服务器:也是Apache基金组织提供的一种Web服务器,提供对JSP和Servlet的支持,通过插件安装同样支持PHP。Tomcat是一个轻量级的Java Web容器,像EJB这样的服务在Tomcat中无法运行。
- JBoss:开源的重量级的Java Web服务器。JBoss中提供了对J2EE各种良好支持,而且JBoss通过了Sun公司的J2EE认证,是Sun公司认可的J2EE容器。
- BEA 的 Weblogic 和 IBM 的 WebSphere 等 J2EE容器。
三、动态页面语言的对比
详细的编程语言历史,可看本人的文章:《编程语言历史》
(1)CGI
在互联网发展的早期,动态网页技术主要使用 CGI(共用网关接口),CGI 程序被用来解释处理表 单中的输入信息,并在服务器中产生对应的操作处理,或者是把处理结果返回给客户端的浏览器,从而 可以给静态的 HTML 网页添加上动态的功能。但是由于 CGI 程序的编程比较困难、效率低下,而且修 改维护也比较复杂,所以在一段时间以后,CGI 逐渐被其他新的动态网页技术所替代。
(2)ASP
ASP 是微软公司推出的一种动态网页语言,它可以将用户的 HTTP 请求传入到 ASP 的解释器中, 这个解释器对这些 ASP 脚本进行分析和执行,然后从服务器中返回处理的结果,从而实现了与用户交 互的功能,ASP 的语法比较简单,对编程基础没有很高的要求,所以很容易上手,而且微软提供的开发 环境的功能十分强大,这更是降低了 ASP 程序开发的难度。但是 ASP 也有其自身的缺点。ASP 在本质 上还是一种脚本语言,除了使用大量的组件,没有其他办法提高效率,而且 ASP 还只能运行在 Windows 环境中,这样 Windows 自身的一些限制就制约了 ASP 的发挥,这些都是使用 ASP 无法回避的弊端。
(3)JSP
JSP(Java Server Page)是SUN公司开发的一种服务器端的脚本语言,自从1999年推出以来,逐 步发展为开发 Web 应用一项重要技术。JSP 可以嵌套在 HTML 中,而且支持多个操作系统平台,一个 用 JSP 开发的 Web 应用系统,不用做什么改动就可以在不同的操作系统中运行。
JSP 本质上就是把 Java 代码嵌套到 HTML 中,然后经过 JSP 容器的编译执行,可以根据这些动态代码的运行结果生成对应的 HTML 代码,从而可以在客户端的浏览器中正常显示。
由于 JSP 中使用的是 Java 的语法,所以 Java 语言的所有优势都可以在 JSP 中体现出来,尤其是 J2EE 中的强大功能,更是成为 JSP 语言发展的强大后盾。
(4)PHP
PHP 是和 JSP 类似,都是可以嵌套到 HTML 中的语言,不同之处在于,PHP 的语法比较独特,在 中混合了 C、Java 等多种语法中的优秀部分,而且 PHP 网页的执行速度要被 CGI 和 ASP 等语言要快很 多。在PHP中,提供了对常见数据库的支持,例如SQL Server2000、MySQL、Oracle、Sybase等,这 种内置的方法使 PHP 中的数据库操作变得异常简单。而且 PHP 程序可以在 IIS 和 Apache 中运行,提供 对多种操作系统平台的支持。
但是 PHP 也存在一些劣势,PHP 的开发运行环境的配置比较复杂,而且 PHP 是开源的产品,缺乏 正规的商业支持。这些因素在一定程度上限制了 PHP 的进一步发展。