java基础76 web服务器之Tomcat服务器
(注:本文是以“压缩版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服务器的更多相关文章
- 第2课 讲解主流三大web服务器之Apache服务器(httpd服务器) - 大型网站高并发架构与自动化运维实战(六)
基本配置 配置固定IP地址 打开默认的网卡配置文件 cd /etc/sysconfig/network-script/ cp ifcfg-eth0 ifcfg-eth1 vim ifcfg-eth0 ...
- Web服务器之iis,apache,tomcat三者之间的比较
IIS-Apache-Tomcat的区别 IIS与Tomcat的区别 IIS是微软公司的Web服务器.主要支持ASP语言环境. Tomcat是Java Servlet 2.2和JavaServer P ...
- J2EE基础之Web服务简介
J2EE基础之Web服务简介 1.什么是Web服务? 在人们的日常生活中,经常会查询网页上某城市的天气信息,这些信息都是动态的.实时的,它是专业的气象站提供的一种服务.例如,在网上购物时,通常采用网上 ...
- 部署Eclipse中的Web项目到Tomcat服务器运行
用Eclipse开发Web项目时,可以通过Tomcat服务器运行Web项目,此时Web项目被部署在[WorkSpace]\.metadata\.plugins\org.eclipse.wst.serv ...
- 【转】Android 服务器之SFTP服务器上传下载功能 -- 不错
原文网址:http://blog.csdn.net/tanghua0809/article/details/47056327 本文主要是讲解Android服务器之SFTP服务器的上传下载功能,也是对之 ...
- Web容器(tomcat服务器)处理JSP文件请求的三个阶段
Web容器(tomcat服务器)处理JSP文件请求的三个阶段 翻译:编写好的jsp文件被web容器中的jsp引擎转换成java源码. 编译:翻译成java源码的jsp文件会被编译成可被计算机执行的字节 ...
- 【转】Android 服务器之SFTP服务器上传下载功能
原文网址:http://blog.csdn.net/tanghua0809/article/details/47056327 本文主要是讲解Android服务器之SFTP服务器的上传下载功能,也是对之 ...
- 常用的系统架构 web服务器之iis,apache,tomcat三者之间的比较
常用的系统架构是: Linux + Apache + PHP + MySQL Linux + Apache + Java (WebSphere) + Oracle Windows Server 200 ...
- 使用Java+NetBeans设计web服务和页面,用Tomcat部署网页
一 安装NetBeans(自动安装jdk) 二 创建服务器 三 发布服务 一 安装NetBeans(自动安装jdk) 进入oracle的下载界面: http://www.oracle.com/tech ...
随机推荐
- java关于类加载的面试题
---面试题 class SingleTon { private static SingleTon singleTon = new SingleTon(); public static int cou ...
- React 动画 Animation
文章源自: https://facebook.github.io/react/docs/animation.html ReactCSSTransitionGroup 基于 ReactTransitio ...
- Cloudstack安装(二)
Cloudstack安装 官方文档参考: http://docs.cloudstack.apache.org/projects/cloudstack-installation/en/4.9/qig.h ...
- GC的时机
说到JVM,GC(垃圾回收)是非常重要的机制. 那么首先的问题是: GC在什么时候会发生? GC的触发包括两种情况:1.程序调用System.gc()的时候.2.系统自身决定是否需要GC. 系统进行G ...
- bootstrap-switch与angularjs结合使用
bootstrap-switch和angularjs结合使用 由于angularjs的dom操作总是先执行,导致$(input[name="switch"])找不到元素,所以使用d ...
- 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 ...
- Redis集群部署(redis + cluster + sentinel)
概述说明 说明:本次实验采用c1.c2.c3三台虚拟机完成,每台服务器上都部署一个master.一个slave和一个sentinel.当某主节点的挂了,相应的从节点替位:当某主节点及主节点对应的从节点 ...
- node的“宏任务(macro-task)”和“微任务(micro-task)”机制
macrotask 和 microtask 表示异步任务的两种分类.在挂起任务时,JS 引擎会将所有任务按照类别分到这两个队列中,首先在 macrotask 的队列(这个队列也被叫做 task que ...
- 51nod1450 闯关游戏
题目来源: TopCoder 基准时间限制:1 秒 空间限制:131072 KB 分值: 320 一个游戏App由N个小游戏(关卡)构成,将其标记为0,1,2,..N-1.这些小游戏没有相互制约的性质 ...
- Bzoj1939 [Croatian2010] Zuma
Time Limit: 4 Sec Memory Limit: 64 MBSubmit: 43 Solved: 31 Description 有一行 N 个弹子,每一个都有一个颜色.每次可以让超过 ...