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 ...
随机推荐
- iptables之NAT代理-内网访问外网
1.前言 本文使用NAT功能:内网服务器,想上网又不想被攻击. 工作原理:内网主机向公网发送数据包时,由于目的主机跟源主机不在同一网段,所以数据包暂时发往内网默认网关处理,而本网段的主机对此数据包不做 ...
- 《Linux内核设计与实现》学习总结 Chap18
一.准备开始 1.一个确定的bug,但大部分bug通常都不是行为可靠且定义明确的. 2.一个藏匿bug的内核版本. 3.相关内核代码的知识和运气. 二.内核中的bug 1.bug的表象: 明白无误的错 ...
- 【学习笔记】BEST定理
害怕忘记简单写一点: 无向图的生成树计数:https://www.cnblogs.com/zj75211/p/8039443.html (*ZJ学长 ORZ ) 有向图的欧拉回路计数:https: ...
- MVC使用jQuery从视图向控制器传递Model的2种方法
http://blog.csdn.net/make1828/article/details/29846003 using System.ComponentModel.DataAnnotations; ...
- centos 安装MATLAB :设置回环设备失败: 没有那个文件或目录
基本参数:centos 7 x86_64,linux 系统, 安装matlab, 已经下载R2016b_glnxa64.iso 但挂载的时候遇到问题: [root@lf mnt]# mount -o ...
- CDOJ--1056
原题链接:http://acm.uestc.edu.cn/problem.php?pid=1056 题目:大小写切换 分析:以前这种问题我都是用dp写的,最近学到了一种更简洁的方法,特此记录下来! # ...
- Matlab周期图法使用FFT实现
参考文章:http://www.cnblogs.com/adgk07/p/9314892.html 首先根据他这个代码和我之前手上已经拥有的那个代码,编写了一个适合自己的代码. 首先模仿他的代码,测试 ...
- RACCommand
RACCommand是ReactiveCocoa中用于表示UI操作的一个类.它包含一个代表了UI操作的结果的信号以及标识操作当前是否被执行的一个状态. 1.创建新的RACCommand self.ex ...
- JS中双等号“==”使用情况
1.判断一个对象的值是否存在 var obj = {}; if(obj.a == null) { // todo } 2. 判断函数入参是否存在 function (a, b) { if(a == n ...
- Spring @Transactional注解不回滚不起作用无效
原文地址:http://www.cnblogs.com/wuxiaofeng/p/6819209.html 这几天在项目里面发现我使用@Transactional之后,抛了异常居然不回滚.后来终于 ...