(注:本文是以“压缩版Tomcat”为例,展开描述的)

一、Tomcat服务器的介绍

1、服务器

1.1、服务器的种类

从物理上讲:服务器就是一台pc机器。至少8核/8G以上、内存至少用T来计算、宽带至少是100M网速,才能算得上是一台“还行”的服务器

web服务器:pc机器安装一个具有web服务的软件,称之为web服务器
    数据服务器:pc机器上安装一个具有数据管理服务的软件,称作为数据库服务器
    邮件服务器:pc机器上安装一个具有发送邮件服务的软件,称之为邮件服务器
     ......

1.2、市面上常见的web服务软件

WebLogic:BEA公司的产品---->收费的    支持javaEE的规范
    WebSphere:IBM公司的产品---->收费的    支持javaEE的规范
    JBoss:Redhat公司的产品---->收费的    支持javaEE的规范
    Tomcat:开源组织Apache的产品---->免费的  支持部分的javaEE规范.(servlet,jsp,jdbc,但是ejb,rmi不支持)
    (javase的规范,包含IO流,多线程,集合,Socket编程.....)

2、Tomcat服务器的基本使用

2.1、下载并安装

1.到apache官网:www.apache.org       http://jakarta.apache.org(产品的主页)
    2.tomCat服务器(软件)
        安装版:window(exe,msi)     linux(rmp)
        压缩版:window(rar,zip)     linux(tar,tar.gz)     注:解压后即可使用,无需安装

2.2、Tomcat软件使用常见问题

  2.2.1.闪退问题
      原因:tomcat软件使用java语言开发的;tomcat软件启动时,会默认在系统的环境变量中查找名称叫JAVA_HOME的变量,这个变量的作用是Tomcat启动所需的jvm
      解决方案:找到环境变量设置JAVA_HOME的变量。  JAVA_HOME=C:\Program Files\Java\jdk1.7.0_75(注意别配置到bin目录下)
  2.2.2.端口被占用出错问题
      原因:tomcat软件启动所需的端口被其他软件占用!
      解决办法:
          A.把占用该端口号的程序关闭,释放所需端口
          B.修改Tomcat软件所需端口。即:找到并修改Tomcat/cof/server.xml (大概在69行处)
          <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
  2.2.3.CATALINA环境变量问题
      原因:Tomcat软件启动后,除了查找JAVA_MOME后,还会查找一个叫CATALINA_HOME变量,这个变量的作用是设置的根目录
      解决方案:建议不要设置CATALINA变量;检查如果有的话,删除掉

3、Tomcat服务器的目录结构

        

二、Tomcat服务器的应用

1、手动在Tomcat服务器中添加项目

此项目源码

 package com.shore.servlet;

 import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; /**
* @author DSHORE / 2018-9-7
*
*/
public class MyServletOne extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//设置编码
response.setContentType("text/html;charset=UTF-8");
//向客户端写出数据
response.getWriter().write("Hello,小姐姐!");
}
}

  

web.xml配置文件

 <?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name> <!-- servlet的配置文件 -->
<servlet>
<!--servlet内部名称(类名),可以自定义 -->
<servlet-name>MyServletOne</servlet-name>
<!-- servlet类名:包名+简单类名 -->
<servlet-class>com.shore.servlet.MyServletOne</servlet-class>
</servlet> <!-- servlet的映射配置 -->
<servlet-mapping>
<!-- servlet内部名称(类名),可以自定义,和上面保持一致 -->
<servlet-name>MyServletOne</servlet-name>
<!-- servlet访问名称:/名称 -->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>

上面的步骤完成后,直接启动Tomcat服务器即可,在浏览器端访问该项目。访问路径(地址):http://localhost:8080/MyServlet/hello        其中localhost是本地的意思,8080是Tomcat服务器的端口号,MyServlet是项目名,hello是web.xml配置文件中设置的访问名

最终效果图

2、自动在Tomcat服务器中添加项目(可以算作自动,因为不需要我们手动复制项目到Tomcat服务器中,也不需要手动配置web.xml文件)

2.1、先在MyEclipse工具中添加Tomcat服务器

点击Window--->Preferences--->MyEclipse--->Servers--->Tomcat  然后选择你的Tomcat的版本,此处记得要勾选Enable,最后点击Browse...添加你的Tomcat服务器即可。

2.2、Tomcat添加完后,写个Servlet项目

      

web.xml配置文件 已自动配置好了,这时 我们只需要写java代码即可

 package com.shore.servlet;

 import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; /**
* @author DSHORE / 2018-9-7
*
*/
public class MyServletOne extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//设置编码
response.setContentType("text/html;charset=UTF-8");
//向客户端写出数据
response.getWriter().write("好好学习,天天向上!");
}
}

2.3、把你的项目加载到Tomcat服务器中,启动即可访问

      

最终效果图

原创作者:DSHORE

作者主页:http://www.cnblogs.com/dshore123/

原文出自:https://www.cnblogs.com/dshore123/p/9586081.html

欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!

java基础76 web服务器之Tomcat服务器的更多相关文章

  1. 第2课 讲解主流三大web服务器之Apache服务器(httpd服务器) - 大型网站高并发架构与自动化运维实战(六)

    基本配置 配置固定IP地址 打开默认的网卡配置文件 cd /etc/sysconfig/network-script/ cp ifcfg-eth0 ifcfg-eth1 vim ifcfg-eth0 ...

  2. Web服务器之iis,apache,tomcat三者之间的比较

    IIS-Apache-Tomcat的区别 IIS与Tomcat的区别 IIS是微软公司的Web服务器.主要支持ASP语言环境. Tomcat是Java Servlet 2.2和JavaServer P ...

  3. J2EE基础之Web服务简介

    J2EE基础之Web服务简介 1.什么是Web服务? 在人们的日常生活中,经常会查询网页上某城市的天气信息,这些信息都是动态的.实时的,它是专业的气象站提供的一种服务.例如,在网上购物时,通常采用网上 ...

  4. 部署Eclipse中的Web项目到Tomcat服务器运行

    用Eclipse开发Web项目时,可以通过Tomcat服务器运行Web项目,此时Web项目被部署在[WorkSpace]\.metadata\.plugins\org.eclipse.wst.serv ...

  5. 【转】Android 服务器之SFTP服务器上传下载功能 -- 不错

    原文网址:http://blog.csdn.net/tanghua0809/article/details/47056327 本文主要是讲解Android服务器之SFTP服务器的上传下载功能,也是对之 ...

  6. Web容器(tomcat服务器)处理JSP文件请求的三个阶段

    Web容器(tomcat服务器)处理JSP文件请求的三个阶段 翻译:编写好的jsp文件被web容器中的jsp引擎转换成java源码. 编译:翻译成java源码的jsp文件会被编译成可被计算机执行的字节 ...

  7. 【转】Android 服务器之SFTP服务器上传下载功能

    原文网址:http://blog.csdn.net/tanghua0809/article/details/47056327 本文主要是讲解Android服务器之SFTP服务器的上传下载功能,也是对之 ...

  8. 常用的系统架构 web服务器之iis,apache,tomcat三者之间的比较

    常用的系统架构是: Linux + Apache + PHP + MySQL Linux + Apache + Java (WebSphere) + Oracle Windows Server 200 ...

  9. 使用Java+NetBeans设计web服务和页面,用Tomcat部署网页

    一 安装NetBeans(自动安装jdk) 二 创建服务器 三 发布服务 一 安装NetBeans(自动安装jdk) 进入oracle的下载界面: http://www.oracle.com/tech ...

随机推荐

  1. java关于类加载的面试题

    ---面试题 class SingleTon { private static SingleTon singleTon = new SingleTon(); public static int cou ...

  2. React 动画 Animation

    文章源自: https://facebook.github.io/react/docs/animation.html ReactCSSTransitionGroup 基于 ReactTransitio ...

  3. Cloudstack安装(二)

    Cloudstack安装 官方文档参考: http://docs.cloudstack.apache.org/projects/cloudstack-installation/en/4.9/qig.h ...

  4. GC的时机

    说到JVM,GC(垃圾回收)是非常重要的机制. 那么首先的问题是: GC在什么时候会发生? GC的触发包括两种情况:1.程序调用System.gc()的时候.2.系统自身决定是否需要GC. 系统进行G ...

  5. bootstrap-switch与angularjs结合使用

    bootstrap-switch和angularjs结合使用 由于angularjs的dom操作总是先执行,导致$(input[name="switch"])找不到元素,所以使用d ...

  6. bzoj千题计划161:bzoj1589: [Usaco2008 Dec]Trick or Treat on the Farm 采集糖果

    http://www.lydsy.com/JudgeOnline/problem.php?id=1589 tarjan缩环后拓扑排序上DP #include<cstdio> #includ ...

  7. Redis集群部署(redis + cluster + sentinel)

    概述说明 说明:本次实验采用c1.c2.c3三台虚拟机完成,每台服务器上都部署一个master.一个slave和一个sentinel.当某主节点的挂了,相应的从节点替位:当某主节点及主节点对应的从节点 ...

  8. node的“宏任务(macro-task)”和“微任务(micro-task)”机制

    macrotask 和 microtask 表示异步任务的两种分类.在挂起任务时,JS 引擎会将所有任务按照类别分到这两个队列中,首先在 macrotask 的队列(这个队列也被叫做 task que ...

  9. 51nod1450 闯关游戏

    题目来源: TopCoder 基准时间限制:1 秒 空间限制:131072 KB 分值: 320 一个游戏App由N个小游戏(关卡)构成,将其标记为0,1,2,..N-1.这些小游戏没有相互制约的性质 ...

  10. Bzoj1939 [Croatian2010] Zuma

    Time Limit: 4 Sec  Memory Limit: 64 MBSubmit: 43  Solved: 31 Description 有一行 N 个弹子,每一个都有一个颜色.每次可以让超过 ...