javaSE学习笔记—Tomcat(8)

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目录。
    缺点:
1.    在操作系统中任意的文件夹中存储的文件夹个数是有限的。
2.    在真实的环境中不可能直接看见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
时间: 2024-10-10 00:38:26

javaSE学习笔记—Tomcat(8)的相关文章

javasE学习笔记:关键字super的使用

/* super 的作用: 1 . super可以在子类中引用父类的成员,通过 .的方式和属性.this相对应. 2. 在子类的构造方法中可以可使用super(参数列表)语句调用父类的构造方法 3. 注意: 子类的构造方法中一定要调用父类的构造方法.... */ javasE学习笔记:关键字super的使用,布布扣,bubuko.com

CentOS学习笔记--Tomcat安装

Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomcat是以root超级管理员的身份运行的,显然,这是非常危险的,可想而知,一但网站被挂马,您的整个服务器都可以被黑客控制了.而通过编译或在线(例如redhat系列的yum, debian系列的apt-get)的方式安装,一个服务器上又只能装一个tomcat的服务,如果将多个网站放到同一个tomcat服务

javaSE学习笔记—HTTP协议(10)

客户端浏览器和服务器Tomcat要进行基本的请求和响应的处理. 其实浏览器和服务器通信的数据的格式已经使用协议进行固定好了,只要双方发送固定格式的数据,那么就可以完成基本的通信. 如果开发者需要查看这样的数据格式,那么就需要安装一个浏览器的HTTP协议相关的插件. 如果要深入的学习浏览器和服务器通信的数据,那么需要详细的掌握他们之间发送的数据内容. 1  请求信息 GET / HTTP/1.1 ? 请求行 Accept: */* Accept-Language: zh-cn,en-US;q=0.

JavaSE学习笔记(五)——类与对象

一.  类和对象 1.1           面向对象与面向过程的区别 1.面向过程 采用面向过程必须了解整个过程,每个步骤都有因果关系,每个因果关系都构成了一个步骤,多个步骤就构成了一个系统,因为存在因果关系每个步骤很难分离,非常紧密,耦合度高,当任何一步骤出现问题,将会影响到所有的系统.如:采用面向过程生产电脑,那么他不会分CPU.主板和硬盘,它会按照电脑的工作流程一次成型. 2.面向对象 面向对象对会将现实世界分割成不同的单元(对象),实现各个对象,如果完成某个功能,只需要将各个对象协作起

JavaSE学习笔记(一)———Java简介与基础

一.  Java语言简介 1.1           计算机语言的发展过程 计算机语言发展主要分为三个阶段: 1.第一代:机器语言 2.第二代:低级语言 3.第三代:高级语言 1.2           Java发展简史 1.Java 是一种程序开发语言,既然是一门语言,就像其他语言一样,具备一定的语法 和自己的数据结构. 2.Java语言来源于sun公司,sun指的是斯坦福大学网络.由james gosling领导并开发. Java语言的具体发展历程 1991~1995  Sun 为了占领智能

JavaSE学习笔记21:Java正则表达式

Java正则表达式   1.正则表达式(特点) 正则表达式,顾名思义,就是符合一定规则的表达式.作用是专门用于操作字符串,虽说String类中已经有了很多操作字符串的方法,但是它们的功能单一,操作起来还麻烦,正则弥补了它们的补足. 下面我们通过一个小例子来感受一下区别: 需求:对QQ号码进行校验,要求:5~15位,0不能开头,只能是数字. (1)常规的做法: class CheckQQ { public static void main(String[] args) { String qq="3

javase学习笔记]-7.7 this之细节与应用

这一节我们接着上一节来继续学习this关键字. 我们之前在7.5节中的构造函数应注意的细节中提到过一个细节就是构造函数可以调用一般函数,但一般函数不能直接调用构造函数.但是我们没有深究构造函数能不能调用构造函数,那么现在我们就来看一看这个问题. 那么构造函数与构造函数之间是怎么访问呢? 为了掌握这个问题,我们必须要明确一个概念,那就是在一个类中的成员如果要被执行,就必须由对象调用.而每个对象都有一个所属的this. java语言给了关键字this这个功能,那就是用this调用构造函数,而且也是通

[javase学习笔记]-6.2 类与对象的关系

这一节我们来看一下类与对象之间的关系. 我们学习java语言,目的就是用java语言对现实生活中的事物进行描写叙述.那么我们如何来描写叙述呢.这就引出了类,我们在实际实现时,是通过类的形式来体现的. 那么对于现实生活中的事物怎样描写叙述呢? 我们在现实生活中对于事物描写叙述通常仅仅关注两个方面,一个是属性,还有一个就是行为. 那么非常自然.计算机的描写叙述就产生出详细的对象. 比方我们要描写叙述一个小汽车.那么我们要怎么描写叙述呢?通过上面关注两个方面,我们非常轻松的从两个方面进行下面描写叙述:

[javase学习笔记]-7.5 构造函数须要注意的几个细节

这一节我们简单的说几个在使用构造函数时须要注意的细节. 通过我们前几节的学习,我们对构造函数有了一个比較清楚的认识,当我们在创建对象时.我们会调用构造函数.那么我们在定义和调用构造函数时.须要注意哪些细节呢? 第一个须要注意的细节:构造函数与set方法 看两个函数代码: class Person { private String name; private int age; //构造函数,初始化name Person(String n) { name = n; System.out.printl