java学习笔记—Tomcat(9)
1 目录结构
bin 二进制目录,主要存储的是一些启动和停止服务器的命令startup.bat
conf 配置目录,server.xml web.xml
lib 服务器软件使用的第三方的jar包
logs 记录服务器软件运行时候的日志信息
temp 临时文件存储的目录
webapps 存储开发者需要部署的网站
work 服务器的工作目录,主要承担的是翻译和编译的工作
2 IDE的集成
如果每次开发网站需要使用MyEclipse,但是开发好网站之后需要部署到tomcat上。那么每次需要在Tomcat的安装目录进行启动并手工的部署网站信息,比较繁琐。
因此需要将Tomcat整合到MyEclispe中。
WindowPreferencesServersTomcat6.xEnableTomcat安装根目录
JDK选择自己的JDK
Launchdebug mode|run mode
path
ApplyOK
3 体验网站的发布
- 建立一个自己的网站的文件夹jnb
- 在网站的文件夹中建立一个静态网页index.html
<h2>this is my first site!</h2>
- 将jnb网站部署到tomcat服务器中去进行管理
直接拷贝到tomcat的webapps目录下
- 启动服务器软件
- 直接打开浏览器输入以下的网址进行访问
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)的更多相关文章
- Java学习笔记4
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
- 0025 Java学习笔记-面向对象-final修饰符、不可变类
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
随机推荐
- MyEclipse 生成APK文件
MyEclipse 生成APK文件 Android Tools>Export Signed Application Packages. http://jingyan.baidu.com/ar ...
- sceneManager.loadscene加载场景时不会主动去加载场景的依赖包,要手动加载或添加场景到build setting列表中
假设有一场景1001.unity,,manifest文件如下: ManifestFileVersion: 0CRC: 425184873Hashes: AssetFileHash: serialize ...
- 一个简单的MVVM雏形
这是@尚春实现的MVVM,使用定时器轮询,只支持{{}}与input.value的修改. 这只能算是一个玩具,真正的MVVM需要有更复杂的扫描机制,JS解析器,双向绑定链什么的. <!DOCTY ...
- Kubernetes的UI界面Kubernetes Dashboard的搭建
1.搭建准备 Kubernetes集群的安装部署 2.搭建过程 2.1.在master节点上创建kubernetes-dashboard.yaml cd /etc/kubernetes vim kub ...
- 文件上传:input file FileReader
js: window.onload = function () { var input = document.getElementById('input-file'), info = document ...
- 网页截图API接口,一键自动生成网页截图
背景 最近在开发一个小程序,其中有一个帮助模块,内容为帮助文章列表,文章内容为网站后台编辑的富文本格式.鉴于小程序的特殊性,其对html格式的富文本支持并不友好. 刚开始有人开发了wxparse插件, ...
- Linux中如何克隆KVM虚拟机
转载:https://yq.aliyun.com/articles/64860 作者 digoal 日期 2016-11-11 标签 Linux , KVM , 虚拟化 , 克隆 背景 当需要批量部署 ...
- intval()
1.将字符串转换成整数 2.取数字的整数部分
- cmake 及make 实践记录
DEBIAN操作系统 预备操作: 安装 gcc g++ make cmake 开启Terminal 切换到超级用户 下载安装上述软件 A@debian:~$ su Password: root@deb ...
- ubuntu系统下安装pyspider:解决pyspider启动时不启动phantomjs问题
问题描述: 在建立第一个虚拟环境时,运行pyspider正常.建立第二个虚拟环境时,运行pyspider再现下面错误.应该是phantomjs没有启动成功. 错误代码:(phantomjs:21507 ...