首页 > 编程语言 >【Javaweb】jsp | 简单学习

【Javaweb】jsp | 简单学习

时间:2023-02-01 05:33:05浏览次数:35  
标签:翻译 java Javaweb 学习 jsp 源代码 Servlet 页面

什么是jsp,它有什么用?

jsp的全称是java server pages。Java的服务器界面。

jsp的主要作用是代替Servlet程序回传html页面的数据

因为Servlet程序回传html页面数据是一件非常繁琐的事情。开发成本和维护成本都极高。

jsp的本质是什么

jsp页面本质上是一个Servlet程序

当我们第一次访问jsp页面的时候。Tomcat服务器会帮我们把jsp页面翻译成为一个Java源文件,并对它进行编译成为.class字节码程序。我们打开java源文件不难发现其里面的内容是:

 

 我们跟踪原代码发现,HttpjspBase类。它直接继承了HttpServlet类。也就是说,jsp翻译出来的java的类,间接的继承了HttpServlet类,也就是说翻译出来的是一个Servlet程序。

 

总结1

:通过翻译的Java源代码我们就可以得到结果:jsp就是Servlet程序。

大家也可以去观察翻译出来的Servlet程序的源代码,不难发现。其底层实现,也是通过输出流。把html页面数据回传给客户端。

 jsp的page指令

 

 

 jsp中的常用脚本

声明脚本的格式是:<%! 声明java代码 %>

作用:可以给jsp翻译出来的java类定义属性和方法甚至是静态代码块。内部类等。

 

 

 

 

 

 jsp中的三种注释

 

 jsp中的九大内置对象

jsp中的内置对象,是指Tomcat在翻译jsp页面成为Servlet源代码后,内部提供的九大对象。叫内置对象。

 

jsp四大域对象

 

 

 

 

 

 

 

 jsp中的out输出和response.getWriter输出的区别

 

 

 

 

 由于jsp翻译之后,底层源代码都是使用out来进行输出,所以一般情况下,我们在jsp页面中统一使用out来进行输出。避免打乱页面输出内容的顺序。

 

 

 

 jsp的常用标签

 

标签:翻译,java,Javaweb,学习,jsp,源代码,Servlet,页面
From: https://www.cnblogs.com/gbrr/p/17081316.html

相关文章

  • 【Javaweb】JavaEE项目的三层架构 | 快速搭建
    逻辑类图  分层的目的是为了解耦。解耦就是为了降低代码的耦合度。方便项目后期的维护和升级。不同的层有不同的包web层com.stguigu.web/servlet/con......
  • Jmeter学习:利用JDBC采样器从数据库取业务数据,进行变量参数化,并用于后续的业务请求
    1.设计JDBC配置元件、JDBC采样器2.JDBC采样通常设置为单次执行3.配合ForEach循环,进行变量的循环提取(方法一)采用随机数进行随机提取,示例代码如下:(方法二)//......
  • c++学习1 基础关键词
    一"const"修饰变量只能被初始化和读取,不能被赋值更改,且必需初始化,不初始化的话会因为读取到随机数而报错。example:constintdate=100;cout<<"date="<<date;//结......
  • 【计算机网络】Stanford CS144 Lab0 : networking warmup 学习记录
    CS144官方镜像:https://cs144.github.io/kangyupl备份的镜像:https://kangyupl.gitee.io/cs144.github.io/实验准备Ubuntu18.04.6LTSx86_64(实验提供)gcc8......
  • JavaScript学习笔记—DOM:事件
    事件(event)事件就是用户和页面之间发生的交互行为比如:点击按钮,鼠标移动,双击按钮,敲击键盘,松开按键...可以通过为事件绑定响应函数(回调函数),来完成和用户之间的交互绑定响......
  • react官方文档-高级部分-Render Props学习(重要)
    前言:术语“renderprop”是指一种在React组件之间使用一个值为函数的prop共享代码的简单技术 具有renderprop的组件接受一个函数,该函数返回一个React元素并......
  • 《RPC实战与核心原理》学习笔记Day14
    19|分布式环境下如何快速定位问题?分布式环境下定位问题有什么难点?分布式环境下定位问题的难点在于,各子应用、子服务之间有复杂的依赖关系,我们有时很难确定是哪个服务......
  • 学习java第四天
    IDEA安装安装完创建src创建newjava.classIDE快捷键:1.psvm=publicstaticvoidmain(String[]args){ }2.sout=System.out.println();IDE:把ide精益求精JAVA语......
  • 动态规划学习笔记
    动态规划1,什么是动态规划私以为,动态规划就是在递归思想的基础上,用空间换时间,将已经计算过的结果用存储起来,消除冗余计算,提高算法效率。2,什么时候使用动态规划抽象一点......
  • Linux 内核概念和学习路线
    01前言本文主要讲解什么是Linux内核,以及通过多张图片展示Linux内核的作用与功能,以便于读者能快速理解什么是Linux内核,能看懂Linux内核。拥有超......