一、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. 部署分离:前端的网页和后端的服务器可以分别部署在不同的服务器上,这样即使后端服务器出现问题,前端的代码仍然可以正常访问。

在这里插入图片描述

### JavaWeb概念概述 JavaWeb是指使用Java语言开发基于互联网的应用程序,这些应用程序可以通过浏览器访问[^3]。它涵盖了所有通过Java编写的可以被客户端请求并返回响应的动态资源[^2]。 #### 动态与静态资源的区别 JavaWeb中的资源分为静态和动态两种形式。静态资源的特点是无论哪个用户访问,其返回的内容始终致,例如普通的HTML页面、图片文件以及CSS样式表等[^4]。而动态资源则是指根据用户的输入或其他条件变化生成不同的内容,典型代表包括Servlet、JSP以及其他服务器端脚本技术如PHP和ASP等。 #### 基于B/S架构的设计模式 JavaWeb应用通常采用Browser/Server (B/S) 架构设计。在这种模型下,所有的业务逻辑处理都在服务端完成,前端仅负责展示数据给最终用户,并接收来自用户的交互操作后再提交至后台进步执行相应功能[^1]。 以下是实现个简单的Java Web 应用例子: ```java // Example of a basic Servlet implementation. import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWorld extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); String title = "Hello World"; out.println("<html><head><title>" + title + "</title></head>"); out.println("<body><h1>Hello World!</h1></body></html>"); } } ``` 此代码片段展示了如何创建最基本的Servlet类来响应HTTP GET 请求并向客户端发送段简单的 HTML 文档作为回应。 ### 总结 综上所述,JavaWeb不仅是个具体的技术名称,更是种利用Java编程语言构建网络环境下的软件解决方案的方法论集合体;它的核心价值在于能够帮助企业快速搭建起跨平台性强且易于维护升级的企业级信息系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

noruta

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值