Tomcat入门

简介: 概念:Tomcat是Apache软件基金会一个核心项目,是一个开源免费的轻量级web服务器,支持SErvlet/JSP少量JavaEE规范JavaEE:Java Enterprise Edition,Java企业版。指Java企业级开发的技术规范总和,包含13项技术规范:JDBC,JNDI,EJB,RMI,JSP,Servlet,XML,JMS,Java IDL,JTS,JavaMail,JAF官网:https://tomcat.apache.org/

JavaWeb

javaweb简介

  • web:全球广域网,也称万维网,能够通过浏览器访问的网站
  • javaweb:是用java积水来解决相关web互联网领域的技术栈

javaweb技术栈

  • B/S架构:Browser/Server,浏览器/服务器架构模式,它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器,获取web资源,服务器把web资源发送给浏览器即可
  • 好处:易于维护升级:服务端升级后,客户端无需任何部署就可以使用到新的版本
  • 静态资源:HTML,CSS,JavaScript,图片等,负责页面展现
  • 动态资源:Servlet,JSP等,负责逻辑处理
  • 数据库:负责存储数据
  • HTTP:负责浏览器和服务器之间数据传输规则
  • 浏览器发送一个请求到服务端请求相关的资源,资源分为动态资源和静态资源,处理好这些资源后,对数据库进行访问,访问后拿到这些数据到页面,页面再将这些静态页面响应给浏览器,浏览器再进行解析展示出来

HTTP

  • 特点
  1. 基于TCP协议:面向连接,安全
  2. 基于请求-响应模型的:一次请求对应一次响应
  3. HTTP协议是无状态的协议:对于事务处理没有记忆能力。每次请求-响应都是独立的
  • 缺点:多次请求间不能共享数据。那么解决方式:java中使用会话技术(Cookie,Session)来解决这个问题
  • 有点:速度快
  • HTTP-请求数据格式
  • 请求数据分为3部分:
  1. 请求行:请求数据的第一行。其中GET表示请求方式,/表示请求资源路劲。HTTP/1.1表示协议版本
  2. 请求头:第二行开始,格式为key:value形式
  3. 请求体:post请求的最后一部分,存放请求参数
  4. GET请求和post请求区别:
  1. GET请求在请求参数的请求行中,没有请求体。POST(也就是最下面那行)POST请求请求参数在请求体中,也就是存放的位置不一样
  2. GET请求请求参数大小有限制,POST没有
  • 常见的HTTP请求头:
  1. Host:表示请求的主机名
  2. User-Agent:浏览器版本,例如Chrome浏览器的标识类Mozilla/5.0  ... Chrome/79,IE浏览器的标识类Mozilla/5.0(Windows NT ...)like Gecko;
  3. Accept:表示浏览器能接收的资源类型,如text/*,image/ *或者  */ *(这里星都是没有空格的)表示所有;
  4. Accept-Language:表示浏览器偏好的语言,服务器可以据此返回不同语言的网页;
  5. Accept-Encoding:表示浏览器可以支持的压缩类型,例如gzip,deflate等
  • HTTP-响应数据格式
  • 响应数据分为3部分:
  1. 响应行:响应数据的第一行。其中HTTP/1.1表示协议版本,200表示响应状态码,ok表示状态描述
  2. 响应头:第二行开始,格式为key:value形式
  3. 响应体:最后一部分。存放响应数据
  • 常见的HTTP响应头:
Content-Type: 表示响应内容的类型,例如text/html.image/jpeg;
Content-length: 表示该响应内容的长度(字节数)
Content-Encoding: 表示该响应压缩算法例如gzip
Cache-Control: 指示客户端如何缓存,例如max-age=300表示可以最多缓存300秒
  • 状态码分类
1xx 响应中-临时状态码,表示请求已经接受,告诉客户端应该给继续请求或者如果它已经完成则忽略它
2xx 成功-表示请求已经被成功接收,处理已完成
3xx 重定向-重定向其他地方:它让客户端再发起一个请求以完成整体处理
4xx 客户端错误-处理发生错误,责任在客户端,如:客户端的请求一个不存在的资源,客户端未被授权,禁止访问等
5xx 服务端错误-处理发生错误,责任在服务端如:服务端抛出异常,路由器出错,HTTP版本不支持等
状态码大全 https://cloud.tencent.com/developer/chapter/13553
  • 常见的响应状态码
状态码 英文描述 解释
200 ok 客户端请求成功
302 Found 指示所请求的资源已移动到由location响应头给定URL,浏览器会自动重新访问到这个页面
304 NotModified 告诉客户端,你请求的资源至上次取后,服务端并未更改,你之间用你本地缓存,隐式重定向
400 BadReques 客户端请求有语法错误,不能被服务器所理解
403 Forbidden 服务器收到请求,但是拒绝提供服务,比如:没有权限访问相关资源
404 Not Found 请求资源不存在,一般是URL输入有误,或者网站资源被删除了
428 Precondition Required 服务器请求有条件的情趣,告诉客户端要想访问该资源,必须携带特定的请求头
429 TooMany Requests 太多请求,服务器不愿意处理请求,因为它的头部字段太大,请求可以在减少请求头域的大小后重新提交
431 Request Header FieldsTooLarge 请求头太大,服务器不愿意处理请求,因为它的头部字段太大。请求可以在减少请求头域的大小后重新提交
405 Method Not Allowed 请求方式有误,比如应该用GET请求方式的资源,用了POST
500 Internal Server Error 服务器发生不可预期的错误。服务器出异常了,看日志去查找
503 Serviece Unavailable 服务器尚未准备好处理请求,服务器刚刚启动,还未初始化好
511 Network Authentication Required 客户端需要进行身份验证才能获取网络访问权限

Tomcat

Tomcat简介

  • 概念:Tomcat是Apache软件基金会一个核心项目,是一个开源免费的轻量级web服务器,支持SErvlet/JSP少量JavaEE规范
  • JavaEE:Java Enterprise Edition,Java企业版。指Java企业级开发的技术规范总和,包含13项技术规范:JDBC,JNDI,EJB,RMI,JSP,Servlet,XML,JMS,Java IDL,JTS,JavaMail,JAF
  • 官网:https://tomcat.apache.org/

Tomcat安装

  • 下载:官网:https://tomcat.apache.org/
  • 安装:绿色版,进行解压
  • 卸载:删除目录即可
  • 启动:双击:bin\startup.bat 然后将:conf/logging.properties

    改成GBK解决控制台中文乱码问题
  • 关闭:1直接x强制关闭,2bin\shutdown.bat直接关闭,3ctrl+c直接关闭
  • 文件解释:bin:可执行文件存放目录,conf:配置文件存放目录,lib:tomcat依赖的jar包,logs:日志文件,temp:临时文件,webapps:应用发布目录,work:工作目录

Tomcat基本使用

  • 配置:
  1. 修改启动带端口号:conf/server.xml
    注意:HTTP协议默认端口号为80.如果将Tomcat端口号改为80,则将来访问Tomcat时。将不用输入端口号
  • 启动时可能出现的问题
  1. 端口号冲突:找到对应程序,将其关闭掉
  2. 启动窗口一闪而过:检查JAVA_HOME环境变量是否正确配置

Tomcat-部署项目

  • Tomcat部署项目
  • 将项目放置到webpps目录下,即部署完成
  • 一般jajvaweb项目会被打成war包,然后将war包放到webapps目录下,Tomcat会自动解压缩war文件
  • IDEA中创建Maven Web项目
  • IDEA中使用Tomcat-集成本地Tomcat


相关文章
|
4月前
|
负载均衡 算法 应用服务中间件
Nginx+Tomcat实现反向代理与负载均衡入门
Nginx+Tomcat实现反向代理与负载均衡入门
183 0
|
9月前
|
Java 应用服务中间件 Docker
Docker从入门到精通——实战Dockerfile构建Tomcat镜像
Docker从入门到精通——实战Dockerfile构建Tomcat镜像
126 0
|
11月前
java202303java学习笔记第四十六天javaweb-tomcat入门程序解析
java202303java学习笔记第四十六天javaweb-tomcat入门程序解析
35 0
QGS
|
11月前
|
XML JavaScript 前端开发
手搭手入门纯Servlet+JSP+Mybatis+Tomcat9实现Web更删改查
Servlet对象的生命周期 Servlet对象的生命周期是由Tomcat服务器(中间件)全权负责的。 Tomcat服务器(中间件)有通常被称为WEB容器。
QGS
114 0
手搭手入门纯Servlet+JSP+Mybatis+Tomcat9实现Web更删改查
|
11月前
|
XML 自然语言处理 Java
【Java框架型项目从入门到装逼】第三节 - 如何用Tomcat发布web项目?
【Java框架型项目从入门到装逼】第三节 - 如何用Tomcat发布web项目?
|
XML Java 应用服务中间件
【JavaWeb】Tomcat的入门使用
Tomcat是Apache软件基金会一个核心项目,是一个开源免费的轻量级Web服务器,支持Servlet/JSP少量JavaEE规范。 概念中提到了JavaEE规范,那什么又是JavaEE规范呢?
72 0
|
Java 应用服务中间件
Servlet入门案例(二)MyEclipse部署Tomcat
Servlet入门案例(二)MyEclipse部署Tomcat
100 0
Servlet入门案例(二)MyEclipse部署Tomcat
|
Java 应用服务中间件 Apache
Java Web入门之开发环境的搭建(包括下载Tomcat和 Eclipse for Java EE)
Java Web入门之开发环境的搭建(包括下载Tomcat和 Eclipse for Java EE)
195 0
Java Web入门之开发环境的搭建(包括下载Tomcat和 Eclipse for Java EE)
|
XML Java 应用服务中间件
web服务器软件:Tomcat入门(window安装和配置Tomcat)
web服务器软件:Tomcat入门(window安装和配置Tomcat)
101 1
|
前端开发 Java 应用服务中间件
java从入门到精通二十二(web服务器tomcat)
tomcat目录说明 直接去官网下载即可,下载安装的话没啥好说的。我们需要知道的就是它是Apache一个开源免费的web服务器。而且比较轻量。 我们下载解压好后就可以看这样的目录结构 首先是bin目录,这个目录里面主要用来存放一些tomcat的命令。一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令)。
128 0
java从入门到精通二十二(web服务器tomcat)