JavaEE规范
Java2平台有3个版本,它们是:
- 适用于小型设备和智能卡的Java2平台Micro版(Java2 Platform Micro Edition,JavaME)
- 适用于桌面系统的Java 2平台标准版(Java2 Platform Standard Edition,Java SE)
- 适用于创建服务器应用程序和服务的Java 2平台企业版(Java2 Platform Enterprise Edition,Java EE)。
其中,JavaEE:JCP组织定制的13种标准技术:Servlet/Jsp JDBC JNDI JTA等等
我们应该遵循JavaEE规范进行服务端开发,就像是手机应该遵循USB接口标准一样:

Web开发概述
回顾以前学过的知识:

最基本、简单的架构主要包括3个:
- 客户端:以B/S架构为例,通常来说是指浏览器或者Web APP,HTML、CSS、JS等需要依赖于浏览器;以C/S架构为例的话,典型的例子有Android/IOS端/电脑桌面端等。
- 应用服务器:我们的Java 后台应用代码需要跑在这台硬件服务器上面的容器中,常见的容器有Tomcat等。
- 数据库服务器:一般来说我们会另外再专门配一台数据库服务器,里面跑着各种数据库软件,常见的有MySQL等。
WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源。
Internet上供外界访问的Web资源分为:
- 静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变。
- 动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点、用户访问web页面看到的内容各不相同。
相关的开发技术有:
- 静态web资源开发技术:Html、CSS、JS
- 常用动态web资源开发技术:JSP/Servlet、ASP、PHP等
在Java中,动态web资源开发技术统称为JavaWeb,因此重点是教大家如何使用Java技术开发动态的web资源,即动态web页面。
其实,相关的资源都是放在服务端的容器里面的,客户端需要向服务端请求。如下图所示:

常见的Web服务器
从上面的知识我们可以知道,我们开发的Java程序是跑在Web服务器的Web容器的,常见的Java Web容器有下面几种:
- WebLogic是BEA公司的产品,是目前应用最广泛的Web服务器,支持JavaEE规范,而且不断的完善以适应新的开发要求,启动界面如图:

- 另一个常用的Web服务器是IBM公司的WebSphereAS,支持JavaEE规范,启动界面如图:

- 大名鼎鼎的红帽的产品,原来属于开源组织JbossAS,后被红帽收购。支持JavaEE规范,免费:

- 没必要实现所有的JavaEE的13种,在小型的应用系统或者有特殊需要的系统中,可以使用一个免费的Web服务器:Tomcat,该服务器支持JSP以及Servlet规范。启动界面如图:

网友评论