一、JavaWeb应用简介
1、SUN的Servlet规范对JavaWeb应用作了这样的定义:“JavaWeb应用由一组Servlet/JSP、HTML文件、相关Java类,以及其他可以被绑定的自愿组成,它可以在由各种供应商提供的符合Servlet规范的容器中运行。”
具体包含如下的内容:
(1)Servlet组件:标准Servlet接口的实现类,运行在服务器端,包含了被Servlet容器动态调用的程序代码。
(2)JSP组件:包含Java程序代码的HTML文挡,运行在服务器端。当客户端请求访问JSP文件时,Servlet容器先把它编译成Servlet类,然后动态调用它的代码。
(3)相关Java类:开发人员自定义的与Web应用相关的Java类。
(4)静态文档:存放在服务器端的文件系统中,如HTML文件、图片文件和声音文件等。当客户端请求访问这些文件时,Servlet容器先从本地文件系统中读取这些文件的数据,再把它发送到客户端。
(5)客户端类:有客户端来运行的类。Applet是典型的客户端类。
(6)web.xml文件:JavaWeb应用的配置文件,采用XML格式。该文件必须位于Web应用的WEB-INF子目录下。
二、Java web应用
1、应用目录结构
假定开发一个名为name的JavaWeb应用,首先应该创建这个Web应用的目录机构,参见下表:
目录 | 描述 |
/name | Web应用的根目录,所有JSP和HTML文件都放在此目录或用户自定义的子目录下(WEB-INF子目录除外) |
/name/WEB-INF | 存放Web应用的配置文件web.xml |
/name/WEB-INF/classes | 存放各种.class文件,Servlet类的.class文件也存放在此目录下 |
/name/WEB-INF/lib | 存放Web应用所需的各种JAR文件。如JDBC驱动程序的JAR文件。 |
name应用包含如下的组件:
1)HTML组件:login.htm
2)Servlet组件:DispatcherServlet类
3)JSP组件:hello.jsp
这些组件之间的关系:
2、web.xml文件
web.xml文件是JavaWeb应用的XML格式的配置文件,存放在WEB-INF子目录下。web.xml文件由开发人员编写,供Servlet容器访问。web.xml也称为JavaWeb应用的发布描述文件,Servlet容器在加载和启动JavaWeb应用时会读取它的web.xml文件,从中获得关于当前Web应用的发布信息。web.xml文件可包含如的配置信息:
(1)Servlet的定义
(2)Servlet的初始化参数
(3)Servlet及JSP的映射
(4)安全域配置参数
(5)welcome文件清单
(6)资源引用
(7)环境变量的定义
<servlet>元素对应一个servlet类,子元素如下:
子元素 | 说明 |
<servlet-name> | 定义Servlet的名字 |
<servlet-class> | 指定Servlet的完整类名(包括包的名字) |
<init-param> | 定义servlet的初始化参数,可定义多个 |
<load-on-startup> | 指定当Servlet容器启动Web应用时,加载各个servlet的次序。如果这个值为正数或零,Servlet容器先加载数值小的servlet,再依次加载其他数值大的servlet。如果这个值为负数或者没有设定,那么Servlet容器将在客户端首次访问这个servlet时加载它 |
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC
'-//Sun Microsystems, Inc.//DID Web Application 2.3//EN'
'http://java.sun.com/j2ee/dtds/web-app_2_3.dtd'>
<web-app>
<servlet>
<servlet-name></servlet-name>//指定代映射的Servlet的名字
<servlet-class></servlet-class>//指定访问Servlet的相对URL路径
</servlet>
<servlet-mapping>
<servlet-name></servlet-name>
<url-pattern></url-pattern>
</servlet-mapping>
</web-app>