Tomcat的简单归纳总结
Tomcat的简单归纳总结
一:开门见山--->Tomcat的两种平台的安装简单介绍
1.1Window平台的安装--->
使用解压版的就可以了,安装版的使用的较少一些.下载地址:
解压后就是一个目录:apache-tomcat-7.0.77(我之前用的是比较旧的版本);
1.2就是配置环境变量的(是普遍使用JSP/Servlet的优秀容器,所以需要安装好Java的环境,比较简单就不在介绍了,PS:网上的教程比较多,比较全的)--->
CATALINA_HOME:C:\apache-tomcat-7.0.77。
CATALINA_BASE:C:\apache-tomcat-7.0.77。
这样是启动tomcat的使用才会找到的.例如在Eclipse下启动tomcat的过程中留意看一下控制台前面的信息:
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server version: Apache Tomcat/7.0.77
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server built: Mar 28 2017 16:01:48 UTC
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Server number: 7.0.77.0
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: OS Name: Windows 8.1
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: OS Version: 6.3
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Architecture: amd64
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: Java Home: C:\Program Files\Java\jdk1.8.0_121\jre
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: JVM Version: 1.8.0_121-b13
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: JVM Vendor: Oracle Corporation
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: CATALINA_BASE: C:\apache-tomcat-7.0.77
八月 09, 2017 10:11:16 上午 org.apache.catalina.startup.VersionLoggerListener log
信息: CATALINA_HOME: C:\apache-tomcat-7.0.77
1.3:Windows下的Tomcat的启动关闭(以解压版的说一下):
来到bin目录下:看到startup.bat,shutdown.bat,startup.sh,shutdown.sh。(前两个是Window下的启动关闭,后面试Linux下的启动关闭).直接点击使用,简单粗暴就不在细说了.默认是使用的8080端口的.使用TCP/IP协议.建立TCP连接的.打开浏览器查看
输入地址:http://localhost:8080/就可以了.也可以使用http://127.0.0.1:8080/,(那个127.0.0.1就是预留给本地软件环回测试使用的意思都一样的.)都可以看到那个经典的小猫首页的。
直接关闭就可以了.
1.4:Linux下的安装介绍:
获得Linux下的安装包,我用的是apache-tomcat-7.0.47.tar.gz(使用tar打包的,Gzip压缩过的).
Linux环境的搭建就不在演示了,使用VMware虚拟机的安装,使用CentOS的Linux distributions就可以了.
接下来就使用远程得登录工具将压缩包传上去.推荐使用SSH这个远程工具的,免费简单好用(打波广告,哈哈).还用SecureCRT等看自己的使用爱好的,求同存异吧。使用得都是SFTP文件传输协议嘛.来到正题吧.
Linux的命令使用就不在演示了。这些切换目录,查看信息,创建目录,解压缩,复制,移动,重命名,VIM编辑器的简单使用,三种常用的命令模式的转换,管道命令,管理套件的,查看进程的信息等常用的命令,再好好复习复习嘛.
修改了端口,但是这个端口防火墙并不是默认开放的嘛比不了Nginx的默认80,并且是开放的,演示开放端口的命令:
1.5Linux的启动和关闭简单介绍:
来到bin目录下:使用ls命令可以看到和Windows下bin目录下可执行文件的.
使用命令: sh startup.sh就可以启动了.但是看不清楚启动过程的,使用命令: tail -f ../logs/catalina.out就可以看到了.
在Windons里面浏览器里面输入:您的ip地址+开放的端口即可看到的.(不知道ip的,弱弱的补一句命令:ifconfig,有别于Windows的ipconfig的).
例如我这里是192.168.217.137:9999的如果每一步都是按照步骤来的,就会再次看到那个经典的猫猫首页了(不过这是在Linux下的tomcat的启动的).
关闭就比较简单了:使用sh shutdown.sh.还是Linux下的命令比较好用的,不用配置环境变量的.
安装Tomcat可以说是安装JAVA,MySql,Nginx,Redis相比较中最简单的,最起码不用配置的.
至此Linux下和Windows的安装就简单的介绍完毕了,至于安装测试的过程中,遇到的问题,没有看到那个可爱的猫猫,这里统一回复一下就是几个细节没有注意到.在仔细操作一遍,之前安装失败了,就把前面的的删除掉,如果是端口被占用了,就找到那个端口被那个进程占用了,方便的杀死就可以的.kill -9 pid.
二:前面的都是一些准备工作的,接下来就是重点介绍一些了吧.
2.1Tomcat的各个目录介绍.
- server.xml:配置整个服务器信息。例如修改端口号,添加虚拟主机等;下面会详细介绍这个文件;
- tomcatusers.xml:存储tomcat用户的文件,这里保存的是tomcat的用户名及密码,以及用户的角色信息。可以按着该文件中的注释信息添加tomcat用户,然后就可以在Tomcat主页中进入Tomcat Manager页面了;
- web.xml:部署描述符文件,这个文件中注册了很多MIME类型,即文档类型。这些MIME类型是客户端与服务器之间说明文档类型的,如用户请求一个html网页,那么服务器还会告诉客户端浏览器响应的文档是text/html类型的,这就是一个MIME类型。客户端浏览器通过这个MIME类型就知道如何处理它了。当然是在浏览器中显示这个html文件了。但如果服务器响应的是一个exe文件,那么浏览器就不可能显示它,而是应该弹出下载窗口才对。MIME就是用来说明文档的内容是什么类型的!
- context.xml:对所有应用的统一配置,通常我们不会去配置它。
通过这些目录就可以知道Tomcat的简单的结构.
2.2简单的说一下有几个常见的问题:
那个运行的文件在work下,会引起tomcat的缓存的问题的,如果有遇到的话,建议将work目录下得Catalina这个删除掉即可了.这个目录下有运行的文件的,进入查看后会发现,jsp的文件会被编译为Servlet的,命名格式是这样的:例如index.jsp,会编译为index_jsp.java,字节码, index_jsp.class的.
在Eclipse中配置Tomcat可是比较简单的,关键是项目发布的位置了,如果直接new 一个server的,不打开修改一下路径的话,就会发布到Eclipse的克隆服务器的.如果是多个就会以temp0,temp1等的命名格式.会有一个wtpwebapps的目录,项目就会发布到那个在那的.打开Eclipse如果想发布到自己安装的那个tomcat中的webapps下就建议修改一下吧.
图片如下:
tomcat的默认编码是ISO-8859-1的。如何修改才能是我们的get和post请求不发生乱码呐?(乱码的原因可以归结为一句话,发送过去服务端的和要显示在客户端的不是编码格式不统一!)
如果使用SSM框架结合Maven的项目构建工具,要配置一个编码过滤器的.统一使用UTF-8的国际编码代码如下:
<!--设置编码过滤器 -->
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
至于GET的请求就使用UTF-8编码就可以了.
但是这只是可以解决POST的请求中文的编码的,GET请求中文的时候会依然乱码的。遇到问题总是要解决的嘛,来回看get的乱码.
不使用编码过滤器的时候,在使用JSP/Servlet的时候.如何处理GET和POST的中文乱码问题:
Get中文请求的乱码解决:
Post中文请求的乱码解决:
还有一种解决方法:就是在tomcat的配置文件中指定编码格式的:
三:Tomcat的结构分析--->
Tomcat服务器也好,Nginx官方说是可以支持50000的并发的轻量级的服务器也罢,都是基于模块的结构的.
如图:
Tomcat的工作原理简单介绍:
- Engine 容器
- Host 容器
- Context 容器
- Wrapper 容器
四:Tomcat的工作分析--->
将WAR包放到webapps的目录下Tomcat启动会自动解压的,Linux下使用的比较多的.将项目部署至Linux上访问.
案例url: http://localhost:8080/test/index.jsp
至此十步完成了一个请求的发送到收到响应.
五:Tomcat的热部署--->
5.1: Tomcat的热部署的定义:
六:Tomcat的配置虚拟目录
6.1:介绍配置虚拟主机的两种方式:在做文件图片上传的demo的时候就会用到这个虚拟目录,指定物理路径,图片就会上传至那个目录下的,数据库里保存图片的路径,在开发头像显示的时候就可以用虚拟目录显示上传 的头像图片的.
6.2:图形化界面配置:
七:Tomcat的CATALINA_HOME和CATALINA_BASE的区别:
- Throughout the docs, you'll notice there are numerous references to $CATALINA_HOME. This represents the root of your Tomcat installation. When we say, "This information can be found in your $CATALINA_HOME/README.txt file" we mean to look at the README.txt file at the root of your Tomcat install. Optionally, Tomcat may be configured for multiple instances by defining $CATALINA_BASE for each instance. If multiple instances are not configured, $CATALINA_BASE is the same as $CATALINA_HOME.
八:Tomcat的双开问题:
解压两个Tomcat的,修改相应的端口的.分别启动,可以修改index.html那个首页便于区别的.
最后:将这些常见常用的归纳了一下:有些地方是学习知名博主的总结分享,一部分是自己学习过程中的一些总结的。这只是抛砖引玉只用的.鲜为人知的技术点还有很多的,一起分享一起快速的进步吧.
Tomcat的简单归纳总结的更多相关文章
- tomcat的简单安装及配置
实验系统:CentOS 6.6_x86_64 实验前提:防火墙和selinux都关闭 实验软件:apache-tomcat-8.0.24 jdk-8u60-linux-x64 jeecms-v6 一. ...
- 就linux三剑客简单归纳
就linux三剑客简单归纳: :awk 习题1:用 awk 中查看服务器连接状态并汇总 netstat -an|awk '/^tcp/{++s[$NF]}END{for(a in s)print a, ...
- HTML标签,简单归纳
列表标签 有序列表: <ol><li></li></ol> 无序列表: <ul><li></li></ul&g ...
- ubuntu下启动和关闭tomcat的简单方法
在ubuntu下面,我们安装tomcat可以有两种方式[1]用aptitude安装aptitude install tomcat6 [2]免安装版从apache tomcat 网站下载apache-t ...
- js知识简单归纳
js简单的归纳 基本类型 number,string,boolean,null,undefined 组合类型 一种对象类型: object 数组 函数 对象 正则 关于函数 作用域 闭包 构造函数 原 ...
- Android中Tomcat的简单配置和使用
因为学Android已经有一段时间了,但是在学校,服务器方面是个短板啊,没有专门的服务器拿给我们学生练手,所以只有自己找办法了.当然,Tomcat就是不二的选择了. 在网上看了看资料,还是觉得自己记录 ...
- Tomcat服务器简单测试jsp文件和html文件
在tomcat里面的webapps文件夹下面新建一个test文件, 写一个test.html的文件,一个test.jsp的文件,两个文件的内容全是:2+2=<%=2+2%> 重新启动Tom ...
- 内嵌tomcat最简单用法
maven项目引入内嵌tomcat依赖 <dependency> <groupId>org.apache.tomcat.embed</groupId> <ar ...
- Windows下nginx+tomcat实现简单的负载均衡
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请 ...
随机推荐
- 微服务-开发框架之springboot by 大雄daysn
目录 一.关于springboot 二.springboot的实践 2.1发布一个rest的api 2.2端点 2.3健康检查 2.4远程监控 一.关于springboot 由来:spring1.0- ...
- day71 菜单的排序 点击被选中
菜单的排序:(给菜单设置权重,权重高的让他显示在上面) from django import template from django.conf import settings from collec ...
- .net core 使用 ef core
第一步: 创建一个.net core console app. 第二步:安装EFCore package 和 design(以前vs是有EF项目模板的,core版本现在没有,所有安装这个工具来创建M ...
- cocos2d-x js 中创建node的方法
1.精灵Sprite 一共4种创建方式 (1) 根据图片资源路径创建 1 2 3 4 //参数1:图片资源路径 var sprite1 = cc.Sprite.create("res/zif ...
- Opencv undefined reference to `cv::imread() Ubuntu编译
Ubuntu下编译一个C++文件,C++源程序中使用了opencv,opencv的安装没有问题,但是在编译的过程中出现如下错误: undefined reference to `cv::imread( ...
- A JSON example
heroes.html<!DOCTYPE html> <html> <head> <meta charset="utf-8"> &l ...
- Visual Studio Code--开发大大们都在用的编辑器
老公推荐的炒鸡nb的编辑器...说让我看起来像个假大神(微笑脸) 如何用VSCode练习python呢,还有VSCode有哪些常用的功能和快捷键呢?我会持续更新中... 1. 先来换个喜欢的颜色主题吧 ...
- the principle of redbalck tree
- WKWebView 加载本地HTML随笔
一天的时间 解决两个坑~~ 1.加载不出来本地HTML 的JS CSS 样式,问题是引用到项目中 是用的group 这个是错的 直接上图 就知道了 像上图一样,加入相对路径即可,因为如果使用了gro ...
- 神州数码OSPF基于区域认证(简单、MD5认证)
实验要求:掌握基于区域的简单认证及MD5认证 拓扑如下 简单认证 R1 enable 进入特权模式 config 进入全局模式 hostname R1 修改名称 interface l0 进入端口 i ...