1、Web容器

所有的程序运行都需要有一个必要的运行环境。这个环境可以是软件,也可以是硬件,或者是软件和硬件的结合。比如说Windows操作系统需要运行在硬件基础上;Office办公软件需要运行在操作系统上。并且程序和运行环境之间会有一定的数据交换,比如操作系统会将运行指令传递给硬件,硬件会将指令的执行结果传递给操作系统。Java Web程序也需要一个运行环境才能执行。这种运行Java Web程序的环境被称为Java Web容器,Java Web程序和Java Web容器之间存在数据交互。目前主要存在两种类型的Java Web容器:一种是独立的Java Web容器,这种容器里面只能运行Java Web程序,这种容器一般也叫做Web服务器,如Tomcat等;另一种是与其他Java EE容器混合在一起的Web容器,Web容器负责运行Web程序,其他容器负责运行EJB等程序,如WeLogic等。

    ①当用户通过浏览器等Web客户端软件向服务器发出一个请求之后,首先接收到这个Web请求的是Web容器,Web容器会将请求信息封装到一个HttpServletRequest类型的对象中,并将对象传递给Java Web程序,对于每个请求Web容器还会创建一个HttpServletResponse类型的对象,该对象的作用是保存需要返回浏览器等客户端的内容。②Java Web程序可以从HttpServletRequest对象中提取用户发出的请求信息,进行适当的处理之后,将处理结果放置到HttpServletResponse对象中。③然后由Web容器解析HttpServletResponse对象内容,并将解析结果以浏览器能够识别的HTML等格式返回给浏览器客户端。

    在这个过程中,HttpServeltRequest和HttpServletResponse就如同两条渡船,负责则在Web 容器和Web程序之间传递信息。需要注意的是,这两个程序仅存在于Java Web容器和Java Web 程序当中,与浏览器没有关系。过程的示意图如下:

Java 开发 windows 软件 javaweb软件开发_Java Web应用开发的基本概念

2、Web应用

Web应用,可以认为是Web程序的另一个名称。准确的定义就是运行在Web容器当中的,能够完成完整功能的应用程序。Java Web应用由一系列编译之后的Java类、静态图片、静态HTML文件、配置文件等构成。通过Java Web应用可以接受用户的输入和请求,并对请丢信息进行加工处理、访问数据库、对用户的请求给出回应。开发Java Web应用程序处理需要遵守Web应用的一些特殊规范以外,与其他类型的应用程序没有本质区别。目前Web应用主要有两种类型:一种是以展示为目的的Web应用,这种应用会以HTML等标记文本或者浏览器所能识别的媒体格式为请求返回内容,用户可以通过浏览器等客户端操作这类应用。另一类是以服务为目的的Web应用。这类应用不提供图形操作界面,只提供方法调用结构,比如Web服务,这类应用一般只能被其他应用程序调用和访问。