• JavaWeb(一)


    目录

    1、基本概念

    1.1、前言

    1.2、web 应用程序

    1.3、静态web

    1.4、 动态web

    2、web服务器

    2.1、技术讲解

    2.2、web服务器

    3、Tomcat

    3.1、安装tomcat:

    3.2、配置

    3.3、发布一个web网站

    4、HTTP

    4.1、什么是HTTP

    4.2、两个时代

    4.3、Http请求

    4.4、Http响应

    5、Maven

    5.1、Maven项目架构管理工具

    5.2、配置环境变量

    5.3、阿里云镜像

    5.4、本地仓库

    5.6、在idea中使用Maven

    5.7、创建一个普通的Maven项目

    5.8、标记文件夹功能

    5.9、在idea中配置tomcat

    5.10、pom.xml

    5.11、 遇到的问题

    6、Servlet

    6.1、Servelet简介

    6.2、HelloServlet


    1、基本概念

    1.1、前言

    web开发:

    • web,网页的意思

    • 静态web

      • html,css

      • 提供给所有人看的数据始终不会发生变化

    • 动态web

      • 提供给所有人看的数据会发生变化,每个人在不同时间地点看到的信息各不相同。

      • 淘宝等几乎所有的网站。

      • 技术栈:Servlet/JSP,ASP, PHP

    • 在Java中,动态web资源开发的技术统称为JavaWeb

    1.2、web 应用程序

    web应用程序:可以提供浏览器访问的程序

    • a.html、b.html......多个web资源,这些web资源可以被外界访问,对外界提供服务。

    • 能访问到的任何一个页面或资源,都存在于这个世界的某一个角落的计算机上。

    • URL

    • 这些同意的web资源会被放在同一个文件夹下。web应用程序—》Tomcat:服务器

    • 一个web应用由多部份组成

      • html、css、js

      • jsp、servlet

      • Java程序

      • jar包

      • 配置文件(Properties)

    web应用程序编写完毕后,若想要提供给外界访问:需要一个服务器统一管理

    1.3、静态web

    • *.html是网页都后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取。

    • 缺点

      • web页面无法动态更新所有用户看到的都是同一界面

      • 无法和数据库交互,数据无法持久化,用户无法交互

    1.4、 动态web

    页面会动态展示,web页面展示的效果因人而异

    缺点:

    • 加入服务器的动态web资源出现错误需要重新别写后台程序,重新发布。

    2、web服务器

    2.1、技术讲解

    ASP:

    • 微软:国内最早流行的

    • 在HTML中嵌入了VB的脚本,ASP+CPM;

    • 在ASP开发中,基本一个页面都有几千行的业务代码,业务极其混乱

    • 维护成本高

    • C#

    PHP:

    • 开发速度快,功能强大,跨平台,代码简单

    • 无法承载大访问量的情况,有局限性

    JSP/Servlet

    B/S:浏览器和服务器

    C/S:客户端和服务器

    • sun公司主推的B/S架构

    • 基于java

    • 承载三高带来的影响,高并发,高可用,高性能

    • 语法像ASP

    2.2、web服务器

    Tomcat

    最新的Servlet和JSP规范总能在其中响应,技术先进、性能稳定、免费。属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。

    IIS

    微软的;ASP..windows自带

    服务器是一种被动的操作用来处理用户的一些请求和给用户一些响应信息;

    3、Tomcat

    3.1、安装tomcat:

    文件夹作用:

    3.2、配置

    可以配置启动的端口号

    • tomcat默认端口号:8080

    • mysql默认端口号:3306

    • http:80

    • https:443

    可以配置主机的名称

    • 默认的主机名魏:localhost-》127.0.0.1

    • 默认网站应用存放位置为:webapps、

    高难度面试题: 请谈一谈网站如何进行访问的!

    1. 输入一个域名,回车

    2. 检查本机的C:\Windows\System32\deivers\etc\hosts配置文件下有没有这个域名的映射

      • 有直接返回对应的ip地址,这个地址中有我们需要访问的web程序

      • 没有:去DNS服务器去寻找,找到返回

    3.配置一下环境变量

    3.3、发布一个web网站

    不会就先模仿

    • 将自己的网站放到服务器中指定的web应用的文件夹下(webapps),就可以访问了

    网站该有的架构:

    4、HTTP

    4.1、什么是HTTP

    超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。

    • 文本:html、字符串.....

    • 超文本:图片、音乐、视频、定位、地图.....

    • HTTPS:s安全的

    4.2、两个时代

    • http1.0

      • HTTP/1.0:客户端可以与web服务器连接后,只能获得一个web资源,断开连接

    • http2.0

      • HTTP/1.1:可以获得多个web资源

    4.3、Http请求

    • 客户端--发请求--服务器

    1. 请求行

      • 请求行中的请求方式:get

      • 请求方式:get、post、head、delete....

        • get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容不安全但是高效。

        • post:请求能携带参数没有限制,大小没有有限制,不会在浏览器的URL地址栏显示数据内容,安全但是不高效

    2. 消息头

      accept:高速浏览器所支持数据类型

      accept-encoding:编码方式GBK UTF-8 GB2312

      Accept-Language: 告诉浏览器语言环境

      Cache-Contro:缓存控制

      Connection: 告诉浏览器完成是断开还是保持继续连接

    4.4、Http响应

    • 服务器--响应--客户端

    1. 响应体

      accept:高速浏览器所支持数据类型

      accept-encoding:编码方式GBK UTF-8 GB2312

      Accept-Language: 告诉浏览器语言环境

      Cache-Contro:缓存控制

      Connection: 告诉浏览器完成是断开还是保持继续连接

      Refresh:告诉客户端多久刷新一次

      Location:让网页重新定位

    2. 响应状态码

      200:请求响应成功

      3xx:请求重定向

      • 你重新到我给你的新位置

      4xx:找不到资源

      • 资源不存在

      5xx:服务器代码错误 500 502:网关错误

    常见面试题:当你的浏览器中地址栏输入地址并回车的一瞬间到页面能够展示回来,经历了什么?

    5、Maven

    为什么要学这个技术?

    1. javaweb中,需要使用大量的jar包,我们手动去导入

    2. 如何能够让一个东西自动帮我们导入和配置这个jar包,Maven诞生了

    5.1、Maven项目架构管理工具

    目前就是用来方便导入jar包的!

    Maven的核心思想:约定大于配置

    • 有约束不要去违反

    Maven会规定好你该如何去编写java代码,必须按照这个规范来。

    5.2、配置环境变量

    在系统环境变量中配置:

    M2_HOME

    MAVEN_HOME

    系统的path中配置%MAVEN_HOME%\bin

    5.3、阿里云镜像

    • 镜像:mirrors

      • 加速下载

    • 国内用阿里云镜像

    Maven 配置

    打开 Maven 的配置文件(windows机器一般在maven安装目录的conf/settings.xml),在<mirrors></mirrors>标签中添加 mirror 子节点:

    1. <mirror>
    2.      <id>aliyunmaven</id>
    3.      <mirrorOf>*</mirrorOf>
    4.      <name>阿里云公共仓库</name>
    5.      <url>https://maven.aliyun.com/repository/public</url>
    6.    </mirror>

    5.4、本地仓库

    建立一个仓库:

    localRepository

    <localRepository>E:\apache-maven-3.8.6\maven-repo</localRepository>

    5.6、在idea中使用Maven

    1. 启动idea

    2. 创建Maven项目

    3. 等待项目导入初始化完毕

    4. 观察maven仓库中多了什么东西

    5.7、创建一个普通的Maven项目

    5.8、标记文件夹功能

    5.9、在idea中配置tomcat

    5.10、pom.xml

    Q8.png)

    5.11、 遇到的问题

    6、Servlet

    6.1、Servelet简介

    • 开发动态web的一门技术

    • 如果想开发Servlet程序:

      • 编写一个类,实现Servlet接口

      • 把开发好的java类部署到web服务器

     

  • 相关阅读:
    云渲染的“公”“私”技术!
    【通义千问】大模型Qwen GitHub开源工程学习笔记(3)-- 通过Qwen预训练语言模型自动完成给定的文本
    在阿里干了6年自动化测试,30岁即将退休的我,告诉你自动化测试工程师有多吃香...
    Redis实现消息队列
    力扣(LeetCode)1684. 统计一致字符串的数目(C++)
    2.Modbus通信协议-软件调试4个工具软件(推荐)
    李白的苏台览古译文赏析
    uniapp 登录功能实现
    java学习之spring基础
    揭秘计算机的神经系统:探索计算机的基本组成
  • 原文地址:https://blog.csdn.net/m0_67463447/article/details/125518218