本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用

内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系。

本人互联网技术爱好者,互联网技术发烧友

微博:伊直都在0221

QQ:951226918

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1.WEB程序结构

1)一个 web 应用程序是由一组 Servlet,HTML 页面,类,以及其它的资源组成的运行在 web 服务器上的完整的应用程序,以一种结构化的有层次的目录形式存在;

2)组成 web 应用程序的这些文件要部署在相应的目录层次中,根目录代表整个 web 应用程序的”根”;

3)通常将 web 应用程序的目录放在 webapps 目录下,在 webapps 目录下的每一个子目录都是一个独立的 web 应用程序,子目录的名字就是 web 应用程序的名字,也就是 web 应用程序的“根”。用户通过 web 应用程序的”根”来访问 web 应用程序中的资源.

4)一个例子:servlet规范定义的 web应用程序的目录层次

说明:① WEB-INF目录下的classes和lib目录都可以存放Java的类文件,在Servlet容器运行时,Web应用程序的类加载器将首先加载classes目录下的,其次才是lib目录下的类。如果这两个目录下存在同名的类,起作用的将是classes目录下的类

②WEB-INF 是一个特殊的目录(所有字母都要大写)。这个目录并不属于Web应用程序可以访问的上下文路径的一部分,对客户端来说,这个目录是不可见的。但该目录下的内容对于Servlet代码是可见的

5)tomcat中的相关规定:http://localhost:8080/docs/appdev/deployment.html

2.关于配置任意目录下的Web应用程序

  · 在Web服务器中可以配置虚拟目录,而虚拟目录所对应的真实目录可以在任何路径下;

  · 在Tomcat服务器中,主要在 XML 配置文件中通过<Context>元素的设置来完成的。一个<Context>元素就表示一个Web应用程序,运行在特定的虚拟主机中;

   · <Context>元素是<Host>元素的子元素,可以在conf\server.xml文件中设置Context元素

  

1)方式一:<Context>元素是<Host>元素的子元素,可以在conf\server.xml文件中设置Context元素

使用docBase属性指定Web应用程序的真实路径。将属性reloadable设置为true,Tomcat在运行时会自动监测Servlet类的改动,如果发现有类被更新,Tomcat服务器将自动重新加载该Web应用程序。这样,在开发时,就不需要频繁重启Tomcat了

2)方式二:在$TOMCAT/conf目录下依次创建Catalina\localhost目录,然后在localhost目录下为 自己的应用创建一个 应用名称.xml(对应的应用的xml描述文件,例如 test.xml)编辑这个文件输入以下内容

 <Context path="/test" docBase="c:/test" reloadable="true" />

从Tomcat 5.5开始,在\conf\Catalina\localhost目录下创建XML配置文件来配置Web应用程序,Tomcat将以XML文件的文件名将作为Web应用程序的上下文路径,而不理会在<Context>元素的path属性中指定的上下文路径是什么。由于Tomcat 5.5之后的版本是以XML配置文件的文件名作为Web应用程序的上下文路径的,因此在配置<Context>元素时,可以不使用path属性

3.最后说两句

1)对于web的目录结构一定有所了解,对于开发而言,一般的目录是很多的且繁杂。熟悉了目录结构就可以方便的定位代码故障

2)了解tomcat的 webapp 和 work目录

3)本篇博客是对于java web项目的一个基础的了解学习,在开发中eclipes已经有了很好的自动化的方式。

转载于:https://www.cnblogs.com/jasonHome/p/5483106.html

[原创]java WEB学习笔记02:javaWeb开发的目录结构相关推荐

  1. [原创]java WEB学习笔记35:java WEB 中关于绝对路径 和相对路径问题

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  2. [原创]java WEB学习笔记48:其他的Servlet 监听器:域对象中属性的变更的事件监听器 (3 个),感知 Session 绑定的事件监听器(2个)...

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  3. [原创]java WEB学习笔记18:java EE 中的MVC 设计模式(理论)

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  4. [原创]java WEB学习笔记36:Java Bean 概述,及在JSP 中的使用,原理

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  5. [原创]java WEB学习笔记58:Struts2学习之路---Result 详解 type属性,通配符映射

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  6. [原创]java WEB学习笔记86:Hibernate学习之路-- -映射 n-n 关系,单向n-n,双向n-n

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  7. [原创]java WEB学习笔记54:Struts2学习之路--- 编写Struts2 的第一个程序,HelloWord,简述 package ,action,result...

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  8. [原创]java WEB学习笔记107:Spring学习---AOP切面的优先级,重用切点表达式

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  9. [原创]java WEB学习笔记94:Hibernate学习之路---session 的管理,Session 对象的生命周期与本地线程绑定...

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

最新文章

  1. python中若干关于类的问题
  2. 卓越软件工程--《微软360度》读后感
  3. VB.NET实现DirectSound9 (6) 声音特效
  4. JS中正规表达式的用法以及常用的方法总结
  5. opengl加载显示3DS模型3DS类型文件
  6. do…while循环
  7. js微信抢红包脚本代码_使用AutoJs实现微信抢红包的代码
  8. java 数据截断_java – 数据截断:第1行的列’标志’的数据太长
  9. Android 5.0 Screen pinning 屏幕固定功能
  10. Java学习中的不解
  11. redis常用命令getex_redis常用命令大全
  12. JavaScript设计模式第一弹-创建型设计模式
  13. JavaScript菜鸽子基础知识总结(一)
  14. WPF中实现PropertyGrid的三种方式
  15. c# chart 各个属性_C# Chart详细解析(待)
  16. catflag Crypto KeyBoard
  17. BigDecimal 金额转换
  18. vue 实现静默打印、打印预览
  19. 维修服务器bga是什么,服务器主板芯片坏了有机器能拆除焊接BGA吗?
  20. may have been in progress in another thread when fork() was called.

热门文章

  1. JavaScript之数据类型
  2. jQuery css-dom
  3. Android在初始化时弹出popwindow的方法
  4. 《Java编程思想》学习笔记4——集合容器
  5. golang中的http客户端
  6. docker目录挂载
  7. 计算机网络:socket
  8. oracle 更改用户状态,密码
  9. 我的Java开发之路
  10. springboot集成swagger2构建RESTful API文档