JavaWeb学习笔记(一)—— JSP基础 目录零、前言一、互联网软件基本模式1.1 分布式工作1.2 三层架构和MVC设计模式二、web前端基础三、JSP—— Java Server Pages3.1 什么是jsp3.2 jsp页面3.3 jsp的运行环境3.4 jsp的运行原理3.5 jsp是servlet的简化3.6 接下来的内容需要结合Tomcat所以进入下一篇博客零、前言我一直在考虑的一个问题是JSP属于前端还是后端现在逐渐有了答案。更多的是倾向于后端初学的时候一直没有下结论是因为当初认为一种技术“属于前端”和“属于后端”是互斥事件只能属于其中的一种。后来对于node.js的学习让我意识到前后端没有明确的界限因为node.js就是一个让前端变得后端化的工具。前端 vs 后端看代码最终在哪里执行发给浏览器执行的是前端代码HTML/CSS/JS。在服务器上执行的是后端代码PHP/Java/Go/Node.js。还有一个问题我为什么又学习一遍Javaweb哈哈哈没错我就是跟着狂神学的Java。因为最近在学springboot这个框架我发现不学习spring就没法学springboot然而如果没有系统学习Javaweb就听不懂spring里面的maven、servlet、controller等等。所以来复习一下Javaweb。对了有人用eclipse去写有人用IJ IDEA去写。而我当时做的练习比较简单没有下任何IDE直接用Windows自带的笔记本写的然后拖到浏览器看效果。一、互联网软件基本模式1.1 分布式工作一图彻底分清什么是客户端VS服务端前端代码VS后端代码。这两组概念并不是两组完全不相干的概念。前端指的是前端代码运行在客户端里前端 ⊆ 客户端。后端指的是后端代码运行在服务端里后端 ⊆ 服务端根据客户端不同又分成C/S架构和B/S架构C/S架构client/serverclient比如我们手机和电脑上的app又叫“胖客户端架构”前端代码存储在客户端减轻了服务器的负担但是客户端承受很大压力。C/S架构下前端代码存储在用户手机里只跟服务器互业务数据客户端代码本身不再传输。B/S架构下前端代码存储在公司服务器里只有在用户通过浏览器发送请求的时候服务器给浏览器发一份前端代码在浏览器运行。维护成本高因为软件更新的时候要升级整个app。这个弊端和静态链接库的弊端是一样的一旦更新了静态链接库需要重新编译整个程序而动态链接库只需要改动态库本身就可以了界面和操作相比于B/S来说更丰富想一下就明白同一款软件手机app比网页版本“精彩”得多B/S架构是C/S架构的特殊情况browser/serverbrowser就是浏览器啦又叫“瘦客户端架构”以上反之以上反之以上反之1.2 三层架构和MVC设计模式首先要明确的是这两个不是一个东西。MVC是一种设计模式而三层架构是一种软件架构。虽然不是同一个东西但是他们两个很容易混淆因为MVC这个概念以后用到的更多所以直接去记MVC就好啦。借鉴1浅谈 MVC与三层架构_李公子的博客-CSDN博客_mvc三层架构借鉴2 MVC与三层架构 - 简书先根据这张图理解M、V、C的具体含义是什么。Controller是核心或者看作一个大脑与V和M进行交互。其实Controller就类似于英伟达的Triton接收前端发来的请求去调用模型返回模型的结果。View为用户提供交互界面其实就是前端Model负责各个功能模块在这里一般称为业务二、web前端基础https://blog.csdn.net/qq_44886213/category_9941944.html?spm1001.2014.3001.5482三、JSP—— Java Server Pages3.1 什么是jspJSP是一种动态网页开发技术由于使用了Java自然开发的是动态网页。静态页面页面代码中没有动态程序由浏览器直接解释执行这个页面呈现的内容是“万年不变”的。动态页面在服务器Tomcat执行动态程序执行的结果连同页面的静态部分被发送到客户端的浏览器我们在浏览器中点击右键“查看页面源码”时是看不到动态代码的。举个栗子比如进入天气预报官网对于同一个网页你今天去看和明天去看看到的内容是不同的页面中日期、温度都会变化这就是页面的动态部分不变的页面颜色、页面框架结构呀这些属于静态部分。3.2 jsp页面两个记忆点jsp页面由Java程序片①用% %括起来 ②就是jsp的动态部分、jsp标签加入HTML页面组成可以简单记成HTMLJava命名“xxx.jsp”实际是一个文本文件。3.3 jsp的运行环境jsp的运行环境 Apache Tomcat JDK 浏览器3.4 jsp的运行原理手写了一下下分为服务器部分和客户端部分来理解比较好。其中要注意是由jsp文件得到的java文件有助于帮助我们理解以后要学习到的servlet这个概念。上图中得到的Java文件已经是一个静态页面了因为动态部分作为输出语句就是print也正是因为产生了很多输出语句打开Java文件会发现里面很乱。3.5 jsp是servlet的简化servlet是一个Java文件它本身就相当于上图中jsp产生的Java文件。由此可以看出jsp的产生虽然比直接用servlet多了一步但是从逻辑上简化了开发人员的代码编写。3.6 接下来要干的肯定是配置环境呀TomcatJDK 所以进入下一篇博客JavaWeb学习笔记二—— Tomcat 安装_玛丽莲茼蒿的博客-CSDN博客

相关新闻

最新新闻

大疆Pocket 4P D-LOG2灰片调色实战:6款定制LUT快速提升Vlog电影感

大疆Pocket 4P D-LOG2灰片调色实战:6款定制LUT快速提升Vlog电影感

这次我们来看一个针对大疆 Pocket 4P 相机 D-LOG2 色彩模式的实测项目。核心不是讲复杂的色彩理论,而是直接告诉你:用 D-LOG2 拍出来的灰片,能不能通过几款定制 LUT(查找表)快速调出旅行 Vlog 所需的氛围感&#xff0c…

2026/8/21 1:12:08
FastAPI 实战指南:从声明式开发到生产部署

FastAPI 实战指南:从声明式开发到生产部署

如果你正在用 Flask 或 Django 写 API,感觉开发效率还行,但一遇到自动文档、数据验证、异步支持这些“现代”需求,就得四处找插件、写一堆胶水代码,那么这篇文章就是为你准备的。 FastAPI 最近在 Python 后端圈的热度&#xff0c…

2026/8/21 1:12:08
网络工程师实战能力构建:从零基础到解决实际问题的知识体系与学习方法

网络工程师实战能力构建:从零基础到解决实际问题的知识体系与学习方法

上周,一个刚转行做运维的朋友深夜发来消息,语气里满是困惑:“哥,我看了好多‘零基础速成网络工程师’的视频,每个都说几天就能精通,工具包也领了一堆。可真到公司让我配个VLAN、排查个环路,脑子…

2026/8/21 1:12:08
从视频到可仿真动态世界:动态重建的核心挑战与技术演进

从视频到可仿真动态世界:动态重建的核心挑战与技术演进

你有没有想过,有一天,你随手拍下的一段日常视频,比如孩子在公园里玩耍,或者一个快递机器人在仓库里穿梭,就能在电脑里瞬间生成一个可以“玩”起来的虚拟世界?在这个世界里,你可以暂停、倒放、从…

2026/8/21 1:12:08
AI 生成 PPT 实战手册:5 大工具横评 + 提示词工程 + 自动化方案

AI 生成 PPT 实战手册:5 大工具横评 + 提示词工程 + 自动化方案

AI 生成 PPT 实战手册:5 大工具横评 提示词工程 自动化方案 一份高质量 PPT 的传统制作周期是 1~3 小时:列大纲、找模板、配图、调字号、对齐……2023 年起,这一套流程被 AIGC 重写了。本文横评 5 款主流 AI 生成 PPT 工具&…

2026/8/21 1:12:08
个人微信API二次开发:朋友圈点赞新动态漏赞

个人微信API二次开发:朋友圈点赞新动态漏赞

私域 SOP:客户发新圈后 10 分钟内点赞。任务表里写死了上周的 snsId,今天全部赞在旧图上。客户以为被冷落。 点赞接口认动态 ID。发朋友圈那次的本地审核号不是 snsId。 字段和列表结构对照这里配:API 文档 每次先拉列表再赞第一条新的 G…

2026/8/21 1:07:06