1.构建Web应用

  手动构建一个Web应用:

  1. 在任意的目录小创建一个文件夹,例如webDemo
  2. 在第一步创建的文件夹中创建一个WEB-INF文件夹(注意大写);
  3. 随意找到一个Web应用,将其中的web.xml复制下来到WEB-INF中。
  4. 修改复制后的xml文件,删除成只留有一个根元素的文件,如下:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    id="WebApp_ID" version="2.5"> </web-app>
  5. 在第二步创建的文件夹中,新创建两个文件夹classes和lib,着两个文件夹的作用完全相同,用于保存web应用所需的java类文件,区别是classes是用来保存单个的class文件,而lib是用来保存打包后的JAR文件。

  经过了以上的步骤,已经建立了一个空的Web应用,将Web应用复制到Tomcat的webapps路劲下,该Web应用就可以自动部署到Tomcat中,通常,我们是将jsp页面存放到Web应用的根路径下,对本例而言就是文件夹webDemo中,然后就可以通过浏览器来访问jsp页面了。

  Web应用的结构

  <webDemo>                  --------------->文件夹的名称

    |----WEB-INF

       |---classes

       |---lib  

       |---web.xml

    |---<a.jsp>    --------------->jsp页面,还可以增加多个jsp 页面

  a.jsp页面下:

<%@ page contentType="text/html; charset=utf-8" language="java" errorPage=" "%>
<html>
<head>
<title>欢迎</title>
</head>
<body>欢迎学习Java Web知识</body>
</html>

  打开Tomcat服务器,在地址栏输入:http://localhost:8080/webDemo/a.jsp,可以看到页面的显示效果。

2.配置描述符web.xml

  位于每个WEB-INF的路径下的web.xml被称为配置描述符,每个配置描述符对于Web应用来说是非常重要的。在servlet2.5之前,每个Java web应用都必须包含一个web.xml文件,并且必须放在WEB-INf文件夹下面。

  对于Java web应用而言,WEB-INF是一个特殊的文件夹,Web容器会包含该文件夹下面的内容,但是客户端浏览器是不能访问WEB-INF中的的任何内容的。每个WEB容器都会提供一个web.xml文件,用于描述所有的WEb应用的共同的配置属性。

  web.xml的作用:

  • 配置JSP
  • 配置和管理Listener 
  • 配置和管理Servlet
  • 配置和管理Filter
  • 配置标签库。
  • 配置JSP属性 

Web应用和web.xml文件的更多相关文章

  1. maven新建Spring MVC + MyBatis + Oracle的Web项目中pom.xml文件

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  2. 【dom4j xml】使用dom4j处理XML文件--测试过程遇到的问题

    首先 关于dom4j的API,有如下: 当然  其中的实体引用有以下: 测试使用环境: 使用Maven搭建web环境,pom.xml文件配置如下: <project xmlns="ht ...

  3. Win10系列:VC++ XML文件解析

    XML文件按照元素标记来存储数据,通过遍历这些元素标记可以得到XML文件中所保存的数据.在C++/CX的类库中并未定义用于解析XML文件的类,但C++提供了能解析XML文件的框架和类库,如msxml4 ...

  4. Web安全之Web 安全介绍与基础入门知识

    web安全介绍与基础入门知识 安全与安全圈 甲方与乙方 甲方:如腾讯,阿里等需要安全服务的公司 乙方:提供安全服务产品的服务型安全公司 web与二进制 web,研究web安全 二进制,研究如客户端安全 ...

  5. web.xml文件加载顺序

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  6. Java Web的web.xml文件作用及基本配置(转)

    其实web.xml就是asp.net的web.config一个道理. 说明: 一个web中完全可以没有web.xml文件,也就是说,web.xml文件并不是web工程必须的. web.xml文件是用来 ...

  7. web.xml文件详解

      web.xml文件详解 Table of Contents 1 listener. filter.servlet 加载顺序 2 web.xml文件详解 3 相应元素配置 1 listener. f ...

  8. web.xml 文件配置01

    web.xml 文件配置01   前言:一般的web工程中都会用到web.xml,方便开发web工程.web.xml主要用来配置Filter.Listener.Servlet等.但是要说明的是web. ...

  9. 【Android学习】XML文本的三种解析方式(通过搭建本地的Web项目提供XML文件)

    XML为一种可扩展的标记语言,是一种简单的数据存储语言,使用一系列简单的标记来描述. 一.SAX解析 即Simple API for XML,以事件的形式通知程序,对Xml进行解析. 1.首先在Web ...

  10. web.xml文件中的web-app元素 部署

    [转载]web.xml文件中的web-app元素 (2012-05-24 13:35:57) 转载▼ 标签: 转载 分类: java 挺全 的 呵呵呵 转了 原文地址:web.xml文件中的web-a ...

随机推荐

  1. 一百零四、SAP中ALV事件之十六,让ALV表格能点击修改

    一.上一篇我们写到生产的ALV表格,但是表格内容不支持修改,如果我们需要修改下图的数量,需要怎么操作呢 二.代码如下,设置 ls_fieldcat-edit = 'X'.   "允许编辑. ...

  2. opencv.js双边滤波 磨皮处理

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http ...

  3. vue 操作列的自定义

    <el-table-column label="操作"> <template slot-scope="scope"> // 用到了 el ...

  4. js原型链理解(4)-经典继承

    经典继承就是组合继承,就是组合构造函数和原型链的优点混合继承. 1.避免引用类型的属性初始化 2.避免相同方法的多次初始化 function Super(name){ this.ages = [100 ...

  5. 初步了解URL

    URl的定义: 在webs上每种可用的资源(比如:HTML文档,图像,视频片段,程序等)都可以由一个通用的资源标志符(Universal Resource Identifier)进行定位.URl的组成 ...

  6. 每天一点点之vue框架开发 - 如何在一个页面调用另一个同级页面的方法

    使用场景: 页面分为header.home.footer三部分,需要在home中调用header中的方法,这两个没有相互引入 官方给出方法: api传送门 在项目中实现: 1.首先同一个vue实例来调 ...

  7. c++ opencv 动态内存

    1.CvMemStorage定义动态内存存储器   内存存储器是一个用来存储诸如序列.轮廓.图形和子划分等动态增长数据结构的底层结构 2.示例 CvMemStorage *mems = cvCreat ...

  8. 使用IDEA打对应结构的Jar包

    发布环境的内容和自己项目默认打包的样式不一样,就需要自定义打印jar包内容. 1.打开右上角项目结构 2.进行图片相关设置 3.直接进行打包,包会出现在class文件里面.解压软件解压开就是自己想要的 ...

  9. oracle(4)----空值说明

    1. 含义:空值(null)表示未知或者暂时不存在的数据,任何类型(没有约束的条件下)都可以取值null:2. 插入null值: insert into stu (id,name) values(3, ...

  10. swift中使用UIColllectionView实现横向轮播的一般方法

    // //  HomeLiveRankCell.swift //  YYSwiftProject // //  Created by Domo on 2018/7/28. //  Copyright ...