一、Javaweb是什么?

1.1 客户端与服务端

客户端 :用于与用户进行交互,接受用户的输入或操作,且展示服务器端的数据以及向服务器传递数据。

例如:手机app,微信小程序、浏览器…

服务端 :与客户端进行交互,接受客户端的数据、处理具体的业务逻辑、传递给客户端需要的数据

举例:应用服务器、数据库服务器、Redis服务器、DNS服务器、ftp服务器


1.2 客户端与服务端的交互

在这里插入图片描述

请求 :客户端向服务端传递数据的主要方式之一,例如我们在浏览器中输入一个网址并提交表单时,浏览器会携带你的个人信息等数据传递给服务器,这就是请求的过程。

响应 :服务端向客户端传递数据的主要方式之一,在接收到用户发送过来的网址的请求时,服务端对发送过来的数据进行处理,并将结果反馈给用户。例如,服务器可能会从数据库中检索数据,生成HTML文件,然后将这些数据作为响应返回给浏览器。浏览器接收响应后,解析和渲染HTML、CSS和JavaScript,将结果呈现在用户眼前。


1.3 Javaweb技术栈

JavaWeb是Java技术在Web开发领域的应用,基于java语言来编写 服务器端 的代码。

前端部分 :HTML CSS JavaScript ES6 Nodejs npm vite vue3 router pinia axios element-plus …

后端部分 :HTTP xml Tomcat Servlet Request Response Cookie Sesssion Filter Listener MySQL JDBC Druid Jackson lombok jwt …

在这里插入图片描述


1.4 CS 和 BS 模式

CS模式(客户端/服务器模式)Client-Server

你的电脑需要有一个专门的程序(客户端软件),比如一个游戏或者办公软件,它可以直接和服务器通信。

想象一下,你在一个餐厅里吃饭:你就是客户端,你在使用手机(客户端设备)进行通信,点菜(发送请求)。厨师就是服务器,他接收你的请求,准备食物(处理请求),最后端送食物给你(响应请求)。

在这里插入图片描述

BS模式(浏览器/服务器模式)Browser-Server

在这个模式下不需要在电脑安装任何特定的软件只需要一个浏览器,就可以通过互连网访问各种网站和服务。

想象一下,你通过手机打开一个订餐网站(通过浏览器访问),服务器还是那个厨师,但是你这次不需要去餐厅。

CS模式通常性能更好,适合需要复杂交互的应用程序;BS模式则更方便,适合通过互联网访问的服务。


1.5 JavaWeb实现前后端分离

前后端分离是什么?

一种开发方式,让负责网页界面(前端)的开发人员和负责处理业务逻辑(后端)的开发人员可以分开工作,互不干扰。

如何实现前后端分离

  1. 开发分离:后端开发人员创建一些API(作为信息传递通道),这些API可以被前端调用,用来获取数据或发送数据。后端程序员只需要按照接口文档编写后端代码,无需关心前端代码。
  2. 部署分离:前端的网页和后端的服务器可以分别部署在不同的服务器上,这样即使后端服务器出现问题,前端的代码仍然可以正常访问。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/81247.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/81247.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

奇偶ASCII值判断

奇偶ASCII值判断 Description 任意输入一个字符,判断其ASCII是否是奇数,若是,输出YES,否则,输出NO。例如,字符A的ASCII值是65,则输出YES,若输入字符B(ASCII值是66),则输…

OpenCV 图形API(74)图像与通道拼接函数-----合并三个单通道图像(GMat)为一个多通道图像的函数merge3()

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 从3个单通道矩阵创建一个3通道矩阵。 此函数将多个矩阵合并以生成一个单一的多通道矩阵。即,输出矩阵的每个元素将是输入矩阵元素的…

多节点监测任务分配方法比较与分析

多监测节点任务分配方法是分布式系统、物联网(IoT)、工业监测等领域的核心技术,其核心目标是在资源受限条件下高效分配任务,以优化系统性能。以下从方法分类、对比分析、应用场景选择及挑战等方面进行系统阐述: 图1 多…

【推荐系统笔记】BPR损失函数公式

一、BPR损失函数公式 BPR 损失函数的核心公式如下: L BPR − ∑ ( u , i , j ) ∈ D ln ⁡ σ ( x ^ u i j ) λ ∣ ∣ Θ ∣ ∣ 2 L_{\text{BPR}} - \sum_{(u, i, j) \in D} \ln \sigma(\hat{x}_{uij}) \lambda ||\Theta||^2 LBPR​−(u,i,j)∈D∑​lnσ(x^ui…

Java 核心--泛型枚举

作者:IvanCodes 发布时间:2025年4月30日🤓 专栏:Java教程 各位 CSDN伙伴们,大家好!👋 写了那么多代码,有没有遇到过这样的“惊喜”:满心欢喜地从 ArrayList 里取出数据…

新能源行业供应链规划及集成计划报告(95页PPT)(文末有下载方式)

资料解读:《数字化供应链规划及集成计划现状评估报告》 详细资料请看本解读文章的最后内容。 该报告围绕新能源行业 XX 企业供应链展开,全面评估其现状,剖析存在的问题,并提出改进方向和关键举措,旨在提升供应链竞争力…

Centos 7 yum配置出现一下报错:

One of the configured repositories failed (CentOS-$releaserver-Base), and yum doesnt have enough cached data to continue. At this point the only safe thing yum can do is fail. There are a few ways to work "fix" this: 1.解决CentOS Yum Repositor…

Redis 常见问题深度剖析与全方位解决方案指南

Redis 是一款广泛使用的开源内存数据库,在实际应用中常会遇到以下一些常见问题: 1.内存占用问题 问题描述:随着数据量的不断增加,Redis 占用的内存可能会超出预期,导致服务器内存不足,影响系统的稳定性和…

HOOK上瘾思维模型——AI与思维模型【88】

一、定义 HOOK上瘾思维模型是一种通过设计一系列的触发(Trigger)、行动(Action)、奖励(Reward)和投入(Investment)环节,来促使用户形成习惯并持续使用产品或服务的思维框…

【playwright】内网离线部署playwright

背景:安装好python3.9后,由于内网无法使用pip安装playwright,多方收集资料,终于部署完成,现汇总如下: 1、playwright需要python3.7以上的版本,如果低于这个版本先要将python解释器升级 2、在可…

Unity动态列表+UniTask异步数据请求

Unity动态列表UniTask异步数据请求 很久没有写东西了。最近有一个需求,在Unity项目里,有几个比较长的列表,经历了一翻优化,趁这几日闲暇,记录下来,给自己留个笔记,也送给有缘之人共同探讨吧。 …

pandas读取Excel数据(.xlsx和.xls)到treeview

对于.xls文件,xlrd可能更合适,但需要注意新版本的xlrd可能不支持xlsx,不过用户可能同时需要处理两种格式,所以可能需要结合openpyxl和xlrd?或者直接用pandas,因为它内部会处理这些依赖。 然后,…

2025年Jetpack Compose集成网络请求库的完整实施方案

Compose中集成网络请求库,网络请求现在Retrofit是最流行的。 首先在Compose中如何进行网络请求,而不仅仅是集成库。因为Compose本身是UI框架,网络请求其实还是通过ViewModel或者Repository来处理,然后通过状态管理来更新UI。所以…

机器视觉开发-摄像头扫描二维码

以下是使用Python和OpenCV实现摄像头扫描二维码的最简单示例: import cv2 from pyzbar import pyzbar# 打开摄像头 cap cv2.VideoCapture(0)print("正在扫描二维码... (按 q 键退出)")while True:# 读取摄像头帧ret, frame cap.read()if not ret:print…

Seata服务端回滚事务核心源码解析

文章目录 前言一、doGlobalRollback3.1、changeGlobalStatus3.2、doGlobalRollback 前言 本篇介绍Seata服务端接收到客户端TM回滚请求,进行处理并且驱动所有的RM进行回滚的源码。 一、doGlobalRollback doGlobalRollback是全局回滚的方法:   首先依旧…

新闻客户端案例的实现,使用axios获取数据并渲染页面,路由传参(查询参数,动态路由),使用keep-alive实现组件缓存

文章目录 0.页面要求1.功能要求2.开始路由配置2.1.嵌套二级路由如何配置?2.2.路由重定向,NotFound页面,去除"#"号 3.实现底部导航栏的高亮效果4.渲染首页:使用axios请求数据5.路由传参5.1.回顾:查询参数传参或者动态路由传参5.2.具体代码 6.渲染详情页7.解决请求过程…

文件操作--文件包含漏洞

本文主要内容 脚本 ASP、PHP、JSP、ASPX、Python、Javaweb --# 各种包含函数 检测 白盒 代码审计 黑盒 漏扫工具、公开漏洞、手工看参数值及功能点 类型 本地包含 有限制、无限制 远程包含 无限制、有限制…

ActiveMQ 性能优化与网络配置实战(二)

五、性能优化实战 5.1 基础配置调整 5.1.1 增加并发消费者 在 ActiveMQ 中,增加并发消费者是提高消息处理效率的重要手段之一。通过配置多个消费者并行处理消息,可以充分利用系统资源,加快消息的消费速度,从而提高系统的整体吞…

C++/SDL 进阶游戏开发 —— 双人塔防(代号:村庄保卫战 17)

🎁个人主页:工藤新一 🔍系列专栏:C面向对象(类和对象篇) 🌟心中的天空之城,终会照亮我前方的路 🎉欢迎大家点赞👍评论📝收藏⭐文章 文章目录 二…

贪心算法精解(Java实现):从理论到实战

一、贪心算法概述 贪心算法(Greedy Algorithm)是一种在每一步选择中都采取当前状态下最优决策的算法策略。它通过局部最优选择来达到全局最优解,具有高效、简洁的特点。 核心特点: 局部最优选择:每一步都做出当前看…