前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java Web(五)Web

Java Web(五)Web

作者头像
浅辄
发布2022-11-23 10:37:47
1.2K0
发布2022-11-23 10:37:47
举报
文章被收录于专栏:Java+爬虫Java+爬虫

Web

Java 技术栈

  • B/S 架构:Browser/Server,浏览器/服务器架构模式,它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器,获取 Wb 资源,服务器把 Wb 资源发送给浏览器即可
    • 好处:易于维护升级:服务器端升级后,客户端无需任何部署就可以使用到新的版本
  • 静态资源:HTML、CSS、JavaScript、图片等。负责页面展现
  • 动态资源:Servlet、JSP 等。负责逻辑处理
  • 数据库:负责存储数据
  • HTTP 协议:定义通信规则
  • Web 服务器:负责解析 HTTP 协议,解析请求数据,并发送响应数据
一.HTTP
  • 概念:HyperText Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则
  • HTTP 协议特点
  1. 基于 TCP 协议:面向连接,安全
  2. 基于请求-响应模型的:一次请求对应一次响应
  3. HTTP 协议是无状态的协议:对于事务处理没有记忆能力。每次请求-响应都是独立的。
  4. 缺点:多次请求间不能共享数据。 Java 中使用会话技术(Cookie、Session)来解决这个问题优点:速度快
1.请求数据的格式
  • 请求数据分为 3 部分:
  • 请求行:请求数据的第一行。其中 GET 表示请求方式,/表示请求资源路径,HTTP/1.1 表示协议版本
  • 请求头:第二行开始,格式为 key:value 形式。
  • 请求体:POST 请求的最后一部分,存放请求参数
  • 常见的 HTTP 请求头:
    • Host:表示请求的主机名
    • User-Agent:.浏览器版本,例如 Chrome 浏览器的标识类似 Mozilla/5.0 Chrome/79,IE 浏览器的标识类似 Mozilla/5.0(Windows NT)like Gecko;
    • Accept:表示浏览器能接收的资源类型,如 text/*,image/或者/*表示所有;
    • Accept-Language:表示浏览器偏好的语言,服务器可以据此返回不同语言的网页;
    • Accept-Encoding:表示浏览器可以支持的压缩类型,例如 gzip,deflate 等。
  • GET 请求和 POST 请求区别:1.GET 请求请求参数在请求行中,没有请求体。POST 请求请求参数在请求体中 2.GET 请求请求参数大小有限制,POST 没有
2.响应数据格式
  • 响应数据分为 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 秒

2.1 状态码大类

2.2 常见的响应状态码

二.Web 服务器
  • Web 服务器是一个应该程序(软件),对 HTTP 协议的操作进行封装,使得程序员不必直接对协议进行操作,让 Wb 开发更加便捷。主要功能是“提供网上信息浏览服务”

1.Web 服务器作用?封装 HTTP 协议操作,简化开发可以将 web 项目部署到服务器中,对外提供网上浏览服务 2.Tomcat 是一个轻量级的 Web 服务器,支持 Servlet/小 SP 少量 JavaEE 规范,也称为 Web 容器,Servlet 容器

1.Tomcat 简介
  • 概念:Tomcat 是 Apache 软件基金会一个核心项目,是一个开源免费的轻量级 Web 服务器,支持 Servlet/JSP 少量 JavaEE 规范。
  • JavaEE:Java Enterprise Edition,Java 企业版。指 Java 企业级开发的技术规范总和。包含 13 项技术规范:JDBC、JNDl、EJB、RMl、JSP、Servlet、XML、JMS、Java IDL、JTS、JTA、JavaMail、JAF
  • Tomcat 也被称为 Web 容器、Servlet 容器。Servlet 需要依赖于 Tomcat 才能运行
  • 官网:https://tomcat.apache.org/
2.Tomcat 基本使用
  • 下载:官网下载
  • 安装:绿色版,直接解压即可
  • 卸载:直接删除目录即可
  • 启动:双击:bin\startup.bat
  • 关闭:
  • 1.直接×掉运行窗口:强制关闭
  • 2.bin\shutdown.bat:正常关闭
  • 3.Ctrl+C:正常关闭
3.配置
  • 配置

1.修改启动端口号:config/server.xml <Connector port="8080"protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/> 注:HTTP 协议默认端口号为 80,如果将 Tomcati 端口号改为 80,则将来访问 Tomcat 时,将不用输入端口号

  • 启动时可能出现的问题:

1.端口号冲突:找到对应程序,将其关闭掉

2.启动窗口一闪而过:检查 JAVA_HOME 环境变量是否正确配置

4.部署项目
  • Tomcat 部署项目:将项目放置到 webapps 目录下,即部署完成
  • 一般 JavaWeb 项目会被打成 war 包,然后将 war 包放到 webapps 目录下,Tomcats 会自动解压缩 war 文件
5.Web 项目结构

5.1IDEA 创建 Maven Web 项目

  • Web 项目结构:
  • 编译后的 ava 字节码文件和 resources 的资源文件,放到 WEB-lNF 下的 classes 目录下
  • pom.xml 中依赖坐标对应的 jar 包,放入 WEB-NF 下的 Iib 目录下
  • 使用骨架

  • 骨架:项目模板

1.选择 web 项目骨架,创建项目

2.删除 pom.xml 中多余的坐标

3.补齐缺失的目录结构

  • 不使用骨架

1.选择 web 项目骨架,创建项目

此处不勾选

2.pom.xml 中添加打包方式为 war

3.补齐缺失的目录结构:webapp

6.IDEA 中使用 Tomcat

6.1 集成本地 Tomcat

  • 将本地 Tomcat 集成到 ldea 中,然后进行项目部署即可

6.2Tomcat Maven 插件

  • pom.xml 添加 Tomcat 插件
  • 使用 Maven Helper 插件快速启动项目,选中项目,右键->Run Maven->tomcat7:run
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-11-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Web
    • Java 技术栈
      • 一.HTTP
      • 二.Web 服务器
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档