JavaWeb学习笔记—— JSP基础

Posted 玛丽莲茼蒿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb学习笔记—— JSP基础相关的知识,希望对你有一定的参考价值。

目录

零、前言    

一、互联网软件基本模式

1.1 分布式工作

1.2 三层架构和MVC设计模式  

二、web前端基础

三、JSP—— Java Server Pages

3.1 什么是jsp

3.2 jsp页面

3.3 jsp的运行环境

3.4 jsp的运行原理

3.5 jsp是servlet的简化

3.6 接下来的内容需要结合Tomcat,所以进入下一篇博客


零、前言    

    我一直在考虑的一个问题是,JSP属于前端还是后端,现在逐渐有了答案。更多的是倾向于后端,初学的时候一直没有下结论是因为当初认为一种技术“属于前端”和“属于后端”是互斥事件,只能属于其中的一种。后来对于node.js的学习让我意识到,前后端没有明确的界限,因为node.js就是一个让前端变得后端化的工具。

        JSP最终反馈给浏览器的结果是静态页面,用户可以直接看到,属于前端的工作;但是JSP的最核心的工作其实是动态页面转化为静态页面,这些用户其实是看不到的,属于后端。让我立刻得出JSP更倾向于后端这个结论的是在博客上看到的一句话“前端看不懂JSP代码”,噢!幡然醒悟。

        还有一个问题,我为什么又学习一遍Javaweb

 

 哈哈哈没错,我就是跟着狂神学的Java。因为最近在学springboot这个框架,我发现不学习spring就没法学springboot,然而如果没有系统学习Javaweb,就听不懂spring里面的maven、servlet、controller等等。所以来复习一下Javaweb。

        对了,有人用eclipse去写,有人用IJ IDEA去写。而我当时做的练习比较简单,没有下任何IDE,直接用Windows自带的笔记本写的,然后拖到浏览器看效果。

一、互联网软件基本模式

1.1 分布式工作

  • C/S架构(client/server)client比如我们手机和电脑上的app        
    • 又叫“胖客户端架构”,功能更多放在客户端来做,减轻了服务器的负担,但是客户端承受很大压力
    • 维护成本高,因为软件更新的时候要升级整个app。(这个弊端和静态链接库的弊端是一样的,一旦更新了静态链接库,需要重新编译整个程序;而动态链接库只需要改动态库本身就可以了)
    • 界面和操作相比于B/S来说更丰富(想一下就明白,同一款软件,手机app比网页版本“精彩”得多)
  • B/S架构C/S架构的特殊情况(browser/server)browser就是浏览器
    • 又叫“瘦客户端架构
    • 以上反之,
    • 以上反之,
    • 以上反之,

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?spm=1001.2014.3001.5482

三、JSP—— Java Server Pages

3.1 什么是jsp

        JSP是一种动态网页开发技术(由于使用了Java,自然开发的是动态网页)。

静态页面:页面代码中没有动态程序,由浏览器直接解释执行,这个页面呈现的内容是“万年不变”的。

动态页面:在服务器(Tomcat)执行动态程序,执行的结果连同页面的静态部分被发送到客户端的浏览器,我们在浏览器中点击右键“查看页面源码”时,是看不到动态代码的。举个栗子,比如进入天气预报官网,对于同一个网页,你今天去看和明天去看,看到的内容是不同的:页面中日期、温度都会变化,这就是页面的动态部分;不变的页面颜色、页面框架结构呀这些属于静态部分。

3.2 jsp页面 

两个记忆点:

  • jsp页面由Java程序片(①用<% %>括起来 ②就是jsp的动态部分jsp标签 加入html页面组成(可以简单记成HTML+Java
  • 命名“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 接下来要干的肯定是配置环境呀

Tomcat+JDK 所以进入下一篇博客

JavaWeb学习笔记(二)—— Tomcat 安装_玛丽莲茼蒿的博客-CSDN博客

以上是关于JavaWeb学习笔记—— JSP基础的主要内容,如果未能解决你的问题,请参考以下文章

JavaWeb学习笔记——第一个JSP文件

重温JSP学习笔记--三大指令九大内置对象

JavaWeb学习笔记-12JSP

JavaWeb学习笔记

JAVAWEB学习笔记17

JavaWeb学习笔记7--JSP脚本元素指令元素动作元素