1 目录结构

bin            二进制目录,主要存储的是一些启动和停止服务器的命令startup.bat
conf  配置目录,server.xml web.xml
lib  服务器软件使用的第三方的jar包
logs  记录服务器软件运行时候的日志信息
temp  临时文件存储的目录
webapps  存储开发者需要部署的网站
work  服务器的工作目录,主要承担的是翻译和编译的工作

2 IDE的集成

如果每次开发网站需要使用MyEclipse,但是开发好网站之后需要部署到tomcat上。那么每次需要在Tomcat的安装目录进行启动并手工的部署网站信息,比较繁琐。

因此需要将Tomcat整合到MyEclispe中。

WindowPreferencesServersTomcat6.xEnableTomcat安装根目录
JDK选择自己的JDK
Launchdebug mode|run mode
path
ApplyOK

3  体验网站的发布

  1. 建立一个自己的网站的文件夹jnb
  2. 在网站的文件夹中建立一个静态网页index.html

<h2>this is my first site!</h2>

  1. 将jnb网站部署到tomcat服务器中去进行管理

直接拷贝到tomcat的webapps目录下

  1. 启动服务器软件
  2. 直接打开浏览器输入以下的网址进行访问

http://127.0.0.1:8080/jnb/index.html

查看运行结果如下:

4  IDE中网站的开发和发布

在IDE中可以通过使用快捷的方式进行网站的开发、发布和访问。

创建:包视图à 右键à new à web projectà输入项目信息àFinish

发布:下图中的第一个按钮à选择要发布的项目àadd添加要发布的服务器软件àDesploy

启动:下图中的第二个按钮à选择要启动的服务器软件àstart

访问:下图中的第三个按钮à输入网址à回车

5 网站的目录结构

以下的目录结构是一个动态网站必须具备的目录结构。
-----| 网站名 文件夹(web项目名)
--------| 静态资源 HTML、CSS、JavaScript
--------| images 文件夹 *.jpeg *.bit *.gif
--------| 动态资源 *.jsp
--------| WEB-INF 主要存储的是class文件和类库
------------| classes 文件夹、编译好的class文件
------------| lib 文件夹、lass文件运行需要的jar包
------------| web.xml 网站的配置文件
--------| META-INF MyEclispe生成的元信息文件夹

网站的部署

部署即将网站直接交给web服务器进行管理并对外提供可以直接输入网址访问的能力称之为网站的部署。

    自动部署
就是将编写好的网站直接以发布的方式或拷贝的方式直接给tomcat的webapps目录。
缺点:
. 在操作系统中任意的文件夹中存储的文件夹个数是有限的。
. 在真实的环境中不可能直接看见webapps目录
优点:
方便快捷
    上传部署
开发网站好之后直接使用工具进行war包的压缩使用tomcat提供的管理客户端进行
网站的上传。
直接上传war包。
注意:如果自动解压了请不要将war文件删除。因为这两个文件时相互关联的。如果删
除那么就会全部删除。
缺点:
a) 在操作系统中任意的文件夹中存储的文件夹个数是有限的。
优点:
可以不用面向服务器拷贝
    手工部署
需要配置tomcat安装目录的server.xml的Host元素
<Context path="/myitcast" docBase="c:\jnb" />
Context元素代表的是一个具体的网站
path属性的值就是访问该网站的一个URL路径
docBase属性值就是网站在磁盘中的具体的路径
优点:
可以脱离了tomcat的webapps的目录的管理。
缺点:
需要重启。
    推荐部署
如果要配置一个网站,但是该网站在其他的磁盘中,那么可以创建一个后缀为.xml的文件。文件的名字将被用作访问网站的路径即path属性值。如果需要访问的时候路径多级的那么需要将文件名以#进行基本的名字的分隔。/a/b那么文件名必须是2#b.xml。如果需要自己的网站是默认的网站那么需要将文件名定义为ROOT.xml。如果网站需要为默认网站,那么必须要重启服务器。
%tomcat_home%\conf\Catalina\localhost
myitcast.xml <Context docBase="c:\jnb"/>
http://localhost:8080/myitcast

java学习笔记—Tomcat(9)的更多相关文章

  1. Java学习笔记4

    Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...

  2. 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁

    什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...

  3. 0035 Java学习笔记-注解

    什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...

  4. Java学习笔记(04)

    Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...

  5. 0032 Java学习笔记-类加载机制-初步

    JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...

  6. 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用

    垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...

  7. 0028 Java学习笔记-面向对象-Lambda表达式

    匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...

  8. 0025 Java学习笔记-面向对象-final修饰符、不可变类

    final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...

  9. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

随机推荐

  1. 你真的了解lambda吗?一文让你明白lambda用法与源码分析

    本文作者: cmlanche 本文链接: http://www.cmlanche.com/2018/07/22/lambda用法与源码分析/ 转载来源:cmlanche.com 用法 示例:最普遍的一 ...

  2. 当前触发事件的两种方式(onclick) 和 ('id') 获取

    1. <input type='text' onclick = 'Clickon(this)'> <script> function Clickon(num){ num.sty ...

  3. python's mutable & immutable

    [python's mutable & immutable] python里面的类型其实也分为immutable和mutable二种,对于mutable,如果b指向a,当b改变时,a也会改变: ...

  4. python之name binding

    [python之name binding] 1. 名字   名字是对一个对象的称呼,一个对象可以只有一个名字,也可以没有名字或取多个名字.但对象自己却不知道有多少名字,叫什么,只有名字本身知道它所指向 ...

  5. Java核心技术-集合

    在实现方法时,选择不同的数据结构会导致其实现风格以及性能存在着很大的差异,例如: 需要快速地搜索成千上万个有序的数据项吗?需要快速地在有序的序列中插入和删除元素吗?需要建立键与值之间的关联吗? 1 J ...

  6. 滑动窗口的中位数 · Sliding Window Median

    [抄题]: 给定一个包含 n 个整数的数组,和一个大小为 k 的滑动窗口,从左到右在数组中滑动这个窗口,找到数组中每个窗口内的中位数.(如果数组个数是偶数,则在该窗口排序数字后,返回第 N/2 个数字 ...

  7. HTML 页面中的 SVG

    SVG 文件可通过以下标签嵌入 HTML 文档:<embed>.<object> 或者 <iframe>. 1>使用 <embed> 标签 < ...

  8. mysql中timestamp简单用法

    该时间字段有比较特殊的地方,显示内容datetime字段一样.当取值为null或者不赋值时,显示当前系统时间,然后在其他地区读取的时候会根据当地的时间转换成当地的系统时间.

  9. Python打开文件open()的注意事项

    刚刚用open(fileName)来打开txt格式的文件,总是出现错误,总是找不到文件读取的内容,后来才发现是open()在使用过程中自动关闭了.这里介绍另种方法解决这个问题. 第一种方法. with ...

  10. wCF 问题收集页

    1.设置最大序列化集合元素个数 http://msdn.microsoft.com/zh-cn/library/system.runtime.serialization.datacontractser ...