【JavaWeb】JavaWeb与JavaWeb技术栈(一)

简介: 【JavaWeb】JavaWeb与JavaWeb技术栈(一)

1、JavaWeb概述


1.1 Web和JavaWeb的概念


在我们日常的生活中,经常会使用浏览器去访问百度、京东等这些网站,这些网站统称为Web网站。


Web是全球广域网,也称为万维网(www),能够通过浏览器访问的网站。


JavaWeb就是用Java技术来解决相关web互联网领域的技术栈。


1.2 什么是服务器与客户端


我们能够正常使用这些Web网站,是因为这些网站(客户端)拥有着稳定、高效的服务器端应用程序,那么,我们来了解一下服务器与客户端。


1.2.1 线下的服务器与客户端


8fe314158b7f61d48c4616d874294a01_a237f7171399e1218b3bc1600e25ca90.png


1.2.2 线上的服务器与客户端


4b830edb311ef974aeae7be7b389c31b_91ed6dae56f3729cfd6add8f0ec543b6.png


1.2.3 客户端的各种形式


1.2.3.1 PC端网页


1.2.3.2 移动端


1.2.4 服务器的各种形式


"服务器"是一个非常宽泛的概念,Tomcat是服务器,MySQL是服务器,Redis也是服务器。同时Linux是服务器,阿里云上租用的虚拟机也是服务器。服务器分为下面这些类型:


硬件服务器


刀片式服务器

塔式服务器

机房

虚拟机服务器


VMWare虚拟机

弹性云服务器

软件服务器


Tomcat

MySQL

Redis

FastDFS

ElasticSearch


1.3 学习JavaWeb就要慢慢体会的知识


1.3.1 编写服务器端应用程序


JavaWeb就是要开发的就是服务器端应用程序,怎么编写?通过学习JavaWeb技术栈。


6be20b0ea0b346a4ab629fd2e7547272_img008.efc85bce.png



1.3.2 了解项目的逻辑构成


请求:请求是项目中最基本的逻辑单元,就像万事万物都由原子构成


举例:点超链接跳转到注册页面


功能:一个功能包含很多个请求


举例:注册用户功能


请求1:点超链接跳转到注册页面

请求2:发送请求获取短信验证码

请求3:检查用户名是否可用

请求4:提交表单完成注册

模块:一个模块包含很多功能


举例:用户信息管理模块


功能1:用户注册功能

功能2:用户登录功能

功能3:个人中心——账户安全功能

功能4:个人中心——账户绑定功能

功能5:个人中心——收货地址功能

功能6:个人中心——我的银行卡功能

子系统:根据项目规模的不同,子系统这层逻辑概念可能有也可能没有。如果设置了子系统,那么子系统中也必然包含很多模块。其实庞大项目的子系统已经相当于一个项目了,甚至比小型项目整个都大。


举例:认证中心子系统


模块1:用户信息管理模块

模块2:权限管理模块

模块3:授权管理模块

模块4:权限检查模块

项目:为了解决现实生活中的实际问题开发一个项目,这个项目就是为这个需求提供的一整套解决方案。


举例:电商项目


子系统1:认证中心子系统

子系统2:商品管理子系统

子系统3:购物车子系统

子系统4:仓储子系统

子系统5:物流子系统

子系统6:订单子系统


1.3.3 什么是架构


1.3.3.1 概念


“架构"其实就是项目的"结构”。只不过"结构"这个词太小了,不适合用来描述项目这么大的东西,所以换了另一个更大的词:架构。所以当我们聊一个项目的架构时,我们聊的是项目是由哪些部分组成的。


1.3.3.2 发展演变历程


单一架构


一个项目就是一个工程,这样的结构就是单一架构,也叫all in one。我们现在的JavaWeb阶段、SSM阶段都是学习单一架构开发技术。


分布式架构


一个项目中包含很多工程,每个工程作为一个模块。模块之间存在调用关系。分布式架构阶段的技术分为两类:


Java框架:SpringBoot、SpringCloud、Dubbo等等。


中间件:Redis、ElasticSearch、FastDFS、Nginx、Zookeeper、RabbitMQ等等。


f9bd23e29931093a25d0025c3f042347_img010.49c05d88.png


1.3.3.3 单一架构技术体系


视图:用户的操作界面+数据的动态显示

前端技术:HTML/CSS/JavaScript

服务器端页面模板技术:Thymeleaf

控制层:处理请求+跳转页面

服务器:Tomcat

控制器:Servlet

域对象:request、session、servletContext

过滤器:Filter

监听器:Listener

异步交互:Ajax

业务逻辑层:业务逻辑计算

持久化层:操作数据库


24ca7d4fd8c0b896ed0971e2975057e0_img011.679a73a9.png

相关文章
|
29天前
|
监控 前端开发 Java
【技术开发】接口管理平台要用什么技术栈?推荐:Java+Vue3+Docker+MySQL
该文档介绍了基于Java后端和Vue3前端构建的管理系统的技术栈及功能模块,涵盖管理后台的访问、登录、首页概览、API接口管理、接口权限设置、接口监控、计费管理、账号管理、应用管理、数据库配置、站点配置及管理员个人设置等内容,并提供了访问地址及操作指南。
|
3月前
|
消息中间件 设计模式 Java
Java技术栈梳理
Java技术栈梳理
|
3月前
|
设计模式 Java 关系型数据库
【Java笔记+踩坑汇总】Java基础+JavaWeb+SSM+SpringBoot+SpringCloud+瑞吉外卖/谷粒商城/学成在线+设计模式+面试题汇总+性能调优/架构设计+源码解析
本文是“Java学习路线”专栏的导航文章,目标是为Java初学者和初中高级工程师提供一套完整的Java学习路线。
477 37
|
2月前
|
前端开发 Java 应用服务中间件
Javaweb学习
【10月更文挑战第1天】Javaweb学习
35 2
|
2月前
|
安全 Java Android开发
JavaWeb解压缩漏洞之ZipSlip与Zip炸弹
JavaWeb解压缩漏洞之ZipSlip与Zip炸弹
69 5
|
3月前
|
缓存 前端开发 Java
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
Soring Boot的起步依赖、启动流程、自动装配、常用的注解、Spring MVC的执行流程、对MVC的理解、RestFull风格、为什么service层要写接口、MyBatis的缓存机制、$和#有什么区别、resultType和resultMap区别、cookie和session的区别是什么?session的工作原理
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
|
3月前
|
安全 Java Android开发
JavaWeb解压缩漏洞之ZipSlip与Zip炸弹
JavaWeb解压缩漏洞之ZipSlip与Zip炸弹
122 2
|
3月前
|
SQL JSON JavaScript
JavaWeb基础9——VUE,Element&整合Javaweb的商品管理系统
Vue 指令、生命周期、this和$、vue脚手架进行模块化开发/ElementUI框架、综合案例,element商品列表展示增删改查
JavaWeb基础9——VUE,Element&整合Javaweb的商品管理系统
|
5月前
|
安全 前端开发 Java
Java技术栈中的核心组件:Spring框架
Java作为一门成熟的编程语言,其生态系统拥有众多强大的组件和框架,其中Spring框架无疑是Java技术栈中最闪耀的明星之一。Spring框架为Java开发者提供了一套全面的编程和配置模型,极大地简化了企业级应用的开发流程。
69 1
|
5月前
|
存储 程序员
JavaWeb之Listener监听器
JavaWeb之Listener监听器
91 0