前言:学习笔记,以供参考

1.什么是服务器

  所谓的服务器其实就是一段别人写好的程序,服务器有两个能力。

  a.可以帮助我们来管理资源。

  b.可以将资源向外界发布以便于外界来访问这个资源。

2.资源有哪些

  a.静态资源:文件本身并不会随着访问的过程而发生改变。常见的静态资源有哪些?

    (1)html文件 (2) css或者是js (3) 影音或者图片。

  b.动态资源:就是我们写好的一些能够在服务端中运行的程序,程序会随着执行的过程而发生改变。

    (1)servlet 
(2)jsp (3)action 等等。

3.服务器类型

  a.静态资源管理服务器:apache
HttpServer(其实httpServer也可以管理动态资源,但是默认的他是不开启动态资源管理的。httpserver并不能处理我们的java程序,但是其他的一些脚本语言是可以处理的。比如说:ruby..)

  b.动态资源管理服务器:可以帮助我们运行我们用java语言所写的程序。

   (1)web容器|tomcat容器(开源):这一类容器的特点是仅实现了javaEE中部分的技术点。

   (2)应用服务器|javaEE容器(付费的):这一类服务器的特点是将javaEE平台下的所有的技术点都实现了。weblogic jboos...

  tomcat:apache的一个开源的免费服务器。这个服务器现在在国内使用的还是比较多的。

  tomcat服务器只实现了javaEE平台下的部分技术点。比如:jsp、servlet、jdbc等等。 

4.javaEE

  javaEE平台,其实就是一堆技术点的集合。每个技术点都是解决某一领域的方案。常见的JavaEE技术有:servlet、jsp、jdbc、jndi、javamail、jta、ejb、jpa、 jsf、javaBean等等。

  目前常见的版本:javaEE1.3、javaEE1.4、javaEE5.0、javaEE6.0。

5.servlet/jsp、tomcat和JavaEE的版本对应关系

  TOMCAT4--J2EE1.3---SERVLET2.3/JSP1.2

  TOMCAT5--J2EE1.4--SERVLET2.4/JSP2.0

  TOMCAT6---J2EE5.0---SERVLET2.5/JSP2.1

  TOMCAT7---J2EE6.0----SERVLET3.0

6.tomcat版本

  tomcat4.x、tomcat5.x、tomcat6.x、tomcat7.x、tomcat8.x

7.tomcat的安装

  a.exe文件

  b.rar文件,直接解压即可。

  在安装的过程中需要注意的是:tomcat尽量不要存放在目录名称为中文的目录中。

  在环境变量中添加CLASS_PATH="%JAVA_HOME%"\lib;

8. tomcat结构目录

  a.bin---->这个目录主要是存放了一些bat文件或者sh文件。启动tomcat的方式:

    1).点击 startup.bat可以启动tomcat

    2).在黑窗口下运行 catalina.bat 后面需要跟命令:start启动  stop关闭

    3).关闭容器 shutdonw.bat或者是直接关闭黑窗口。

  b.conf--->这个目录中存放的都是一些配置文件 xml

    server.xml:这个文件主要是完成对tomcat的总体性的配置文件。比如说可以在这个文件里配置端口号,可以配置服务访问的host名称。

<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" redirectPort="8443" URIEncoding="utf-8"/>

还可以配置编码方式,修改port中的值来制定你要让tomcat监听的端口号。

  c.lib---->这个目录中存放的是一些jar文件,这里的jar文件重要有两大类:

    1)tomcat自身的jar

    2)实现javaEE平台下部分标准的实现类(比如:jsp  servlet...)

  d.log---->存放的都是tomcat的日志文件。如果我们想了解黑窗口在启动时的打印信息,可以进到这个目录下找到catalina.log文件在这个文件中可以看到相关记录。

  e.temp---->在这个目录中存放的是tomcat在运行时所产生的一些临时文件。这些文件是否存在并不影响tomcat的运行,所以这个目录下的内容可以被删除掉。但是:temp文件夹不能删。

  f.webapps---->这个目录主要是存放需要让tomcat去管理的资源的目录。项目war包可以放在此处,然后启动tomcat。那么项目就可以运行了。

  g.work---->这个目录主要存放的是tomcat对jsp编译完后的原文件以及class文件。当程序修改,但是没有任何修改效果,可以删除项目内容再试。

9.关于tomcat项目部署的方式

  a.放到webapps目录下

  静态部署:

  Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将JSP程序打包成一个 war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。一个war包就是有特性格式的jar包,它是将一个web程序的所有内容进行压缩得到。具体如何打包,可以使用许多开发工具的IDE环境,如Eclipse等。也可以用 cmd 命令:jar -cvf mywar.war  myweb

webapps这个默认的应用目录也是可以改变。打开Tomcat的conf目录下的server.xml文件,找到下面内容,将appBase修改即可。

 <Host name="localhost" appBase="webapps"

           unpackWARs="true" autoDeploy="true"

           xmlValidation="false" xmlNamespaceAware="false">

  b.修改server.xm 的host节点。添加<Context  path="/访问资源目录" docBase="e:/xxx"/>

  在Tomcat的配置文件中,一个Web应用就是一个特定的Context,可以通过在server.xml中新建Context里部署一个JSP应用程序。打开server.xml文件,在Host标签内建一个Context,内容如下。

    <Context path="/hello" docBase="D:\ workspace\hello\WebRoot" debug="0" privileged="true">

    </Context>

  或者  

<Context path="/myapp" reloadable="true" docBase="D:\myapp" workDir="D:\myapp\work"/>

  或者

<Context path="/sms4" docBase="D:\workspace\sms4\WebRoot"/>

  说明:

    path是虚拟路径;页面访问时需要;

    docBase 是应用程序的物理路径;

    workDir 是这个应用的工作目录,存放运行时生成的与这个应用相关的文件;

    debug 则是设定debug level,  0表示提供最少的信息,9表示提供最多的信息;

    privileged设置为true的时候,才允许Tomcat的Web应用使用容器内的Servlet;

    reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署;

    antiResourceLocking 和antiJARLocking  热部署是需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里。

  d.在conf目录下找到或者是新建文件夹(Catalina---->localhost----->访问资源的项目名称.xml-----><Context....../>),在conf目录中,新建 Catalina\localhost目录,在该目录中新建一个xml文件,名字不可以随意取,要和path后的那个名字一致,按照下边这个path的配置,xml的名字应该就应该是hello(hello.xml),该xml文件的内容为:  

<Context path="/hello" docBase="E:\workspace\hello\WebRoot" debug="0" privileged="true"></Context>

10.访问项目地址

  访问服务器的资源的格式:协议:地址(域名):端口/资源目录/资源名称

  URL:Uniform Resource Locator(统一资源定位符)     协议:地址:端口/资源目录/资源名称

  URI:Uniform Resource Identifier(统一资源标识符)     资源目录/资源名称

11.tomcat用户的配置

  使用Tomcat以后,出现上面的页面后,点击"Tomcat Manager"的时候要输入账号和密码的时候就得进行tomcat-users.xml的配置来适合自己的快捷和安全的登录!

  <?xml version='1.0' encoding='utf-8'?>

    <tomcat-users>

      <role rolename="tomcat"/>

      <role rolename="manager"/>

      <role rolename="admin"/>

      <user username="admin" password="" roles="tomcat,admin,manager"/>

  </tomcat-users>

  tomcat-users.xml文件包含了所有Tomcat服务器的注册用户,其中有role、user两种信息。

  1.role参数:Tomcat中保存了一些用户权限,也就是角色,比如admin、Tomcat等;

  2.User参数:这个数据项中包含了诸如用户名、用户密码、用户权限、用户说明等数据。

12.http协议

  http请求由三部分组成,分别是:请求行、消息报头、请求正文

  GET     请求获取Request-URI所标识的资源;

  POST    在Request-URI所标识的资源后附加新的数据;

  HEAD    请求获取由Request-URI所标识的资源的响应消息报头;

  PUT     请求服务器存储一个资源,并用Request-URI作为其标识;

  DELETE  请求服务器删除Request-URI所标识的资源;

  TRACE   请求服务器回送收到的请求信息,主要用于测试或诊断;

  CONNECT 保留将来使用;

  OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求。

浅入tomcat的更多相关文章

  1. 浅入浅出EmguCv(三)EmguCv打开指定视频

    打开视频的思路跟打开图片的思路是一样的,只不过视频是由一帧帧图片组成,因此,打开视频的处理程序有一个连续的获取图片并逐帧显示的处理过程.GUI同<浅入浅出EmguCv(二)EmguCv打开指定图 ...

  2. 浅入浅出EmguCv(一)OpenCv与EmguCv

    最近接触计算机视觉方面的东西,于是准备下手学习opencv,从官网下载windows的安装版,配置环境,一系列步骤走完后,准备按照惯例弄个HelloWord.也就是按照网上的教程,打开了那个图像处理领 ...

  3. 浅入深出之Java集合框架(上)

    Java中的集合框架(上) 由于Java中的集合框架的内容比较多,在这里分为三个部分介绍Java的集合框架,内容是从浅到深,如果已经有java基础的小伙伴可以直接跳到<浅入深出之Java集合框架 ...

  4. 浅入深出之Java集合框架(中)

    Java中的集合框架(中) 由于Java中的集合框架的内容比较多,在这里分为三个部分介绍Java的集合框架,内容是从浅到深,如果已经有java基础的小伙伴可以直接跳到<浅入深出之Java集合框架 ...

  5. 浅入深出之Java集合框架(下)

    Java中的集合框架(下) 由于Java中的集合框架的内容比较多,在这里分为三个部分介绍Java的集合框架,内容是从浅到深,哈哈这篇其实也还是基础,惊不惊喜意不意外 ̄▽ ̄ 写文真的好累,懒得写了.. ...

  6. 浅入深出Vue:环境搭建

    浅入深出Vue:环境搭建 工欲善其事必先利其器,该搭建我们的环境了. 安装NPM 所有工具的下载地址都可以在导航篇中找到,这里我们下载的是最新版本的NodeJS Windows安装程序 下载下来后,直 ...

  7. 浅入深出Vue:工具准备之PostMan安装配置及Mock服务配置

    浅入深出Vue之工具准备(二):PostMan安装配置 由于家中有事,文章没顾得上.在此说声抱歉,这是工具准备的最后一章. 接下来就是开始环境搭建了~尽情期待 工欲善其事必先利其器,让我们先做好准备工 ...

  8. 浅入深出Vue:工具准备之WebStorm安装配置

    浅入深出Vue之工具准备(一):WebStorm安装配置 工欲善其事必先利其器,让我们先做好准备工作吧 导航篇 WebStorm安装配置 所有工具的下载地址都可以在导航篇中找到,这里我们下载的是最新版 ...

  9. 浅入深出Vue系列

    浅入深出Vue导航 导航帖,直接点击标题即可. 文中所有涉及到的资源链接均在最下方列举出来了. 前言 基础篇 浅入深出Vue:工具准备之WebStorm搭建及配置 浅入深出Vue之工具准备(二):Po ...

随机推荐

  1. linux系统运维常用基本命令详解

      1.ls 文件属性:  -:普通文件  d:目录文件  b:块设备  c:字符设备文件  l:符号连接文件  p:命令管道  s:套接字文件  文件权限: 9位数字,每3位一组  文件硬链接次数  ...

  2. Windows快捷键

    一.常见用法: F1 显示当前程序或者windows的帮助内容. F2 当你选中一个文件的话,这意味着“重命名” F3 当你在桌面上的时候是打开“查找:所有文件” 对话框 F10或ALT 激活当前程序 ...

  3. 什么是License

    许多混乱就始于你不知道License到底是什么,到底有什么含义.当你对你的产品使用License时,并不意味着你放弃了任何权利,你依然对其拥有原著作权.License只是授予他们于特定权利来使用你的产 ...

  4. spring MVC mybatis dispacherServlet(源码解读)

    以下源码版本(4.2.0.RELEASE) dispacherServlet是servlet的实现类,是spring MVC的前端转发器,是spring MVC的核心. 那么它做了哪些事呢? 它主要做 ...

  5. Session 潜在bug防范

    注意: Session的使用一定要及时的清理,因为它是“全局”的(包括其生命周期),所以在使用Session保存状态时,不用时要及时的NULL掉,小心潜在的Bug.

  6. eafier 簡單易用 HTML、CSS 網頁編輯器(可自動插入 Tag 標籤)

    很久很久以前,一般人要做網頁的話大概都會用 FrontPage 之類的工具,更進階一點的會用 Dreamweaver 等軟體.雖然上述軟體提供很方便的「所見即所得」的編輯預覽模式,但寫出來的網頁程式碼 ...

  7. logging 文件日志

    1. 例子 import logging logging.basicConfig(filename='log.txt', #文件名 level=logging.DEBUG, #级别 format=u' ...

  8. STM32f103 定时器之编码器接口模式

    背景 买了个Arduino的旋转编码器模块,配合STM32定时器的编码器模式实现了旋转角度以及圈数的计数.这种旋转编码器我能想到的实际应用场景暂时只有实体音量旋钮,鼠标的滚轮等,所以只实现了计数.阅读 ...

  9. 如何使用FileZilla上传和下载文件

    一.使用FileZilla上传文件 1 打开 FileZilla 按照如下图所示,填写远程 Linux 的 IP ,用户名,密码,还有端口号(默认22) 2 选中左边需要上传的文件,然后拖到右边,等待 ...

  10. MyBatis框架在控制台打印Sql语句-遁地龙卷风

    第二版 (-1)写在前面 我用的是MyBatis 3.2.4,Maven Project (0)mybatis-config.xml <settings> <setting name ...