一、Tomcat背景

  自从JSP发布之后,推出了各式各样的JSP引擎。Apache Group在完成GNUJSP1.0的开发以后,开始考虑在SUN的JSWDK基础上开发一个可以直接提供Web服务的JSP服务器,当然同时也支持Servlet, 这样Tomcat就诞生了。Tomcat是jakarta项目中的一个重要的子项目,其被JavaWorld杂志的编辑选为2001年度最具创新的Java产品,同时它又是sun公司官方推荐的servlet和jsp容器,因此其越来越多的受到软件公司和开发人员的喜爱。servlet和jsp的最新规范都可以在tomcat的新版本中得到实现。其次,Tomcat是完全免费的软件,任何人都可以从互联网上自由地下载。Tomcat与Apache的组合相当完美。

Tomcat就是Servlet容器

二、Tomcat目录

tomcat
|---bin:存放启动和关闭tomcat脚本;
|---conf:存放不同的配置文件(server.xml和web.xml);
|---doc:存放Tomcat文档;
|---lib:存放Tomcat运行需要的库文件(JARS);
|---logs:存放Tomcat执行时的LOG文件;
|---src:存放Tomcat的源代码;
|---webapps:Tomcat的主要Web发布目录(包括应用程序示例),其中root目录就是不输入项目的默认目录;
|---work:存放jsp编译后产生的class文件;

三、Tomcat安装

Tomcat的官方站点为http://tomcat.apache.org/,要安装Tomcat,首先需要安装JDK。

安装完毕以后,准备启动Tomcat,进入bin文件下使用startup.bat文件启动

还会重新开一个命令行工具显示启动Tomcat信息。

看到无异常并显示Server startup in xxx ms信息就启动了。

或者直接在浏览器中输入:http://localhost:8080。看到以下画面就证明正常启动了。

使用startup.bat启动Tomcat容器,我们看一下bat源文件就能发现,它其实调用的catalina.bat。

那我们直接调用catalina.bat文件,看一下是什么结果

不难发现,里面的很多命令。

run : 在当前窗口打开Tomcat启动信息

start:在新窗口打开Tomcat启动信息

stop:停止Tomcat

四、Tomcat上部署Web程序

 1、Java Web程序目录结构

2、在Tomcat中部署Web应用程序的方式主要有如下几种:(① 自动部署 ② 控制台部署 ③ 自定义部署

① 自动部署

我们按照以下的目录结构手工的方式创建一下目录和文件(不用任何的IDE开发环境建项目,纯手工)

Index.jsp文件:

 <%@ page import="com.hzg.Person" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>JavaWeb</title>
</head>
<body>
<%
String info = null;
Person person = new Person();
info = person.Info();
%>
<%=info%>
</body>
</html>

Web.xml文件:

 <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
</web-app>

Person.class文件:

 写一个Person.java文件,执行javac命令让编译成class文件,把这个class文件粘贴过去就行。

 package com.hzg;
public class Person {
public String Info(){
return "Hello World";
}
}

好了,这就是一个最简单Web结构。把JavaWebTest这个文件夹放在Tomcat的webapps目录下,Tomcat会自动帮我们启动该站点。

运行一下结果:(访问地址:http://localhost:8080/JavaWebTest)

② 控制台部署:

√ 启动Tomcat后,输入http://localhost:8080。

√ 点击Manager App

√ 点击取消

√ 需要在conf文件找到tomcat-user.xml文件,把下面标红的代码加入。用户名和密码设置成自己的。

√ 重启Tomcat后,再次按照刚才的步骤输入刚才设置的用户和密码进入manager app。即可看到以下界面。

我们再去webapps下看看,发现多了一个aaa的文件夹,点击进去和JavaWebTest里的文件一模一样

 ③ 自定义部署

第三种比较灵活,部署起来相对以上两种稍微麻烦点。

√ 在conf文件夹下新建Catalina目录,然后再在它的目录下新建localhost目录,最后在localhost目录下新建一个dd.xml文件

 <?xml version="1.0" encoding="UTF-8"?>
<Context docBase = "D:\\HzgCode\\JavaWebTest"></Context>

√ 然后输入http://localhost:8080/dd,同样项目也启动了。

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

Tomcat--安装与部署(一)

Tomcat--各个目录详解(二)

Tomcat--安装与部署(一)的更多相关文章

  1. tomcat 安装配置部署到nginx+tomcat+https

    目录 1 Tomcat简介 2.下载并安装Tomcat服务 2.2 部署java环境 2.3 安装Tomcat 2.4 Tomcat目录介绍 (关注点 bin conf logs webapps) 2 ...

  2. Tomcat安装应用部署及配置文件解读

    Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选. Tomcat和Nginx,APa ...

  3. Docker之tomcat安装与部署项目

    docker安装tomcat  docker pull tomcat:8.5 等待... (1)正常的方式启动tomcat  docker run -d --name tomcat -p 80:808 ...

  4. Lucene/Solr搜索引擎开发笔记 - 第2章 Solr安装与部署(Tomcat篇)

    一.安装环境 图1-1 Tomcat和Solr的版本 我本机目前使用的Java版本为JDK 1.8,因为Solr 4.9要求Java版本为1.7+,请注意. 二.Solr部署到Tomcat流程 图1- ...

  5. 如何在tomcat安装部署php项目

    java开发者都知道,tomcat是用来部署java web项目的.前几天老k偶然得知PHP/Java Bridge,通过它可以实现在jsp和php之间共享session,详见<如何实现jsp和 ...

  6. Tomcat安装、配置和部署笔记

    首先从Apache的官方网站(http://tomcat.apache.org/)下载Tomcat.有安装版和解压版两种,我个人喜欢用解压版. Tomcat安装(绿色版安装) 1.将下载的Tomcat ...

  7. Tomcat安装、配置和部署

    首先从Apache的官方网站(http://tomcat.apache.org/)下载Tomcat.有安装版和解压版两种,本文档介绍绿色版安装方法. 一.Tomcat安装(绿色版安装) 1.将下载的T ...

  8. Tomcat安装部署和安全加固优化以及反向代理应用

    1.Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同 ...

  9. 【开发工具IDE】eclipse的web项目的tomcat安装部署问题

    一.发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并 ...

  10. 如何在Cent OS上安装和部署jdk与tomcat?

    Cent OS是一款Linux系统.在商业应用中,Linux操作系统在服务器市场有着广泛的运用,这源于Linux系统的几大优点: 1.跨平台的硬件支持 由于Linux 的内核大部分是用C 语言编写的, ...

随机推荐

  1. yii2发送邮件(配置QQ版本)

    1:首先在配置文件main-local.php components=>[]里面配置 'mailer' => [              'class' => 'yii\swift ...

  2. 数据结构(三) 用java实现七种排序算法。

    很多时候,听别人在讨论快速排序,选择排序,冒泡排序等,都觉得很牛逼,心想,卧槽,排序也分那么多种,就觉得别人很牛逼呀,其实不然,当我们自己去了解学习后发现,并没有想象中那么难,今天就一起总结一下各种排 ...

  3. Unity无缝循环世界实现

    一年前曾经碰到过已无限世界为题材的游戏开发比赛,虽然对比赛没有兴趣,但是对这个题材倒是有点想法.如何通过unity3d实现无缝的循环世界呢. 有一种想法是动态生成,一块场景一块场景进行动态加载.(做过 ...

  4. js华氏度转为摄氏度

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 使用关系型数据库作为Redis落地的思路

    Redis的持久化方式主要有2种:RDB和AOF,但各有不足,同时Redis没有SQL支持,Redis本身提供的命令不足以实现大多数SQL查询需求,对后期运营的分析需求支撑不足.此外,对于游戏来说,活 ...

  6. 如何在IntelJ下用Maven创建一个Web项目

    相信一开始做Web项目的同学都是直接把项目包放在WEB-INF/lib目录下,然后就开始做项目了.但是之后接触了一些使用了Maven进行包管理的项目,我们就不得不学一学如何用Maven做包管理. 在网 ...

  7. shiro基础学习(四)—shiro与项目整合

    一.认证 1.配置web.xml   2.配置applicationContext.xml      在applicationContext.xml中配置一个bean,ID和上面的过滤器的名称一致. ...

  8. Android ShellUtils

    Android中执行Shell命令的工具类 public class ShellUtils { public static final String COMMAND_SU = "su&quo ...

  9. shell脚本练习题

    下面列出了几个linux学习中的shell脚本题目 1.九九乘法表 #!/bin/bash echo "九九乘法表" # 注意((之间不能有空格.加减乘除的格式.还有转义字符\*. ...

  10. MFC使用SQLite 学习系列 一: SQLITE_MISUSE错误

    一 为什么要选择SQLite 由于使用文本文件来记录测试数据,速度越来越慢的问题,经过园友推荐,使用了SQLite来进行数据的存储,再次感谢园友@LightSmaile. 关于这个问题,可以参考一下上 ...