Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >JSP一:理解JSP

JSP一:理解JSP

作者头像
乐心湖
发布于 2020-07-31 08:35:27
发布于 2020-07-31 08:35:27
17.5K00
代码可运行
举报
文章被收录于专栏:MyTechnologyMyTechnology
运行总次数:0
代码可运行

了解JSP

JSP 本质上就是⼀个 Servlet,JSP 主要负责与⽤户交互,将最终的界⾯呈现给⽤户。

Java中,只有Servlet接口才可以于浏览器交互。

一个HTML+JS+CSS+Java 的混合⽂件。

JSP引擎会将你写好了的jsp转化为Java类,也就是Servlet类,如果你去看他转化之后的源代码,你会发现它实际上就是我们之前使用原始Servlet的servletResponse.getWriter().write()方法来写html的。

换句话说,当服务器接收到⼀个后缀是 jsp 的请求时,将该请求交给 JSP 引擎去处理,每⼀个 JSP 页面第⼀次被访问的时候,JSP 引擎会将它翻译成⼀个 Servlet ⽂件,再由 Web 容器调⽤ Servlet 完成响应。

如果你单纯从开发的角度去看,JSP 就是在 HTML 中嵌⼊ Java 程序。

嵌入方式

1.JSP 脚本,执⾏ Java 逻辑代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<% Java代码 %>

我们去新建一个JSP页面,就叫test.jsp,运行项目后在浏览器中访问该页面。

在body中加入

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        <%
            String s = "Hello JSP";
            System.out.println(s);
        %>

2.JSP 声明:定义 Java ⽅法

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<%!
 声明 Java ⽅法
%>

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        <%!
           public String hello(){
               return "hhaa";
           }
        %>

        <%
            System.out.println(hello());
        %>

3.JSP 表达式:把 Java 对象直接输出到 HTML ⻚⾯中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 <%= Java变量 %>

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<%=hello()%>

内置对象

一共有9个内置对象,常用的是 request、response、session、application、pageContext

  1. request:表示⼀次请求,HttpServletRequest。
  2. response:表示⼀次响应,HttpServletResponse。
  3. pageContext:页面上下⽂,获取页面信息,PageContext。
  4. session:表示⼀次会话,保存用户信息,HttpSession。
  5. application:表示当前 Web 应用,全局对象,保存所有⽤户共享信息,ServletContext。
  6. confifig:当前 JSP 对应的 Servlet 的 ServletConfifig 对象,获取当前 Servlet 的信息。
  7. out:向浏览器输出数据,JspWriter。
  8. page:当前 JSP 对应的 Servlet 对象,Servlet。
  9. exception:表示 JSP 页面发⽣的异常,Exception。很少用到。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
JSP第二篇【内置对象的介绍、4种属性范围、应用场景】
什么是JSP内置对象 JSP引擎在调用JSP对应的jspServlet时,会传递或创建9个与web开发相关的对象供jspServlet使用。JSP技术的设计者为便于开发人员在编写JSP页面时获得这些web对象的引用,特意定义了9个相应的变量,开发人员在JSP页面中通过这些变量就可以快速获得这9大对象的引用 细心的朋友会发现,我们没有在JSP页面上定义过out对象,却可以直接使用!其实out对象就是JSP内置对象之一。 九个内置对象: pageContext page config request respo
Java3y
2018/03/15
9340
JSP第二篇【内置对象的介绍、4种属性范围、应用场景】
JSP知识点总结
一、jsp静态包含和动态包含的区别   在学习request对象的时候,我们曾经使用过request.getRequestDispatcher(String url).include(request,response)来对页头和页尾面进行包含。inclue指令也是做这样的事情,一起来试验一下吧。 这是页头 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head>
Kevin_Zhang
2018/07/04
1.2K0
JSP面试题都在这里
下面是我整理下来的JSP知识点: 图上的知识点都可以在我其他的文章内找到相应内容。 JSP常见面试题 jsp静态包含和动态包含的区别 jsp静态包含和动态包含的区别 在讲解request对象的时候,我
Java3y
2018/03/15
1.4K0
JSP面试题都在这里
深圳Java培训:Java零基础学习之掌握JSP技术--【千锋】
JavaServerPages简称jsp,从“server”这个词可以看出,这其实也是一门java服务端技术,其实可以简单的把jsp认为是servlet,一点错也没有。Jsp的实质,就是客户端需要的资源是通过jsp技术动态生成的。
深圳java培训技术
2019/06/20
6020
深圳Java培训:Java零基础学习之掌握JSP技术--【千锋】
JSP总结
language属性:用来设置JSP页面使用的语言,默认值是java,而且只有一个值就是java
一头小山猪
2020/06/15
3.1K0
JSP 基本凉凉,学妹不知道他是啥
  JSP(全称JavaServer Pages)是由 Sun Microsystems 公司主导创建的一种动态网页技术标准。JSP 部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成 HTML、XML 或其他格式文档的 Web 网页,然后返回给请求者。JSP 技术以 Java 语言作为脚本语言,为用户的 HTTP 请求提供服务,并能与服务器上的其它 Java 程序共同处理复杂的业务需求。   JSP 将 Java 代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP 引入了被称为“ JSP 动作”的 XML 标签,用来调用内建功能。另外,可以创建 JSP 标签库,然后像使用标准 HTML 或 XML 标签一样使用它们。标签库能增强功能和服务器性能,而且不受跨平台问题的限制。JSP 文件在运行时会被其编译器转换成更原始的 Servlet 代码。JSP 编译器可以把 JSP 文件编译成用 Java 代码写的 Servlet,然后再由 Java 编译器来编译成能快速执行的二进制机器码,也可以直接编译成二进制码。
Demo_Null
2020/09/28
1.1K0
JSP 基本凉凉,学妹不知道他是啥
jsp必会知识(最全 精美版)
1. :standard.jar 和 jstl.jar 文件拷贝到 /WEB-INF/lib/ 下。
编程张无忌
2021/01/26
7520
jsp必会知识(最全 精美版)
JavaWeb(三)JSP之3个指令、6个动作、9个内置对象和4大作用域
前言   前面大概介绍了什么是JSP,今天我给大家介绍一下JSP的三个指令、6个动作以及它的9大内置对象。接下来我们就直接进入正题 一、JSP的3个指令 JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分。 指令用来申明JSP页面的一些属性,比如编码方式,文档类型。我们在servlet中也会申明我们使用的编码方式和响应的文档类型的,而JSP就是用指令来申明。上面我们也说到了一条指令,也就是page指令。 JSP指令格式:<%@
用户1195962
2018/01/18
1.5K0
JavaWeb(三)JSP之3个指令、6个动作、9个内置对象和4大作用域
27. JSP
因为 Servlet 程序回传 html 页面数据是一件非常繁锁的事情。开发成本和维护成本都极高。
Devops海洋的渔夫
2021/11/19
7630
27. JSP
Web-第十一天 JSP学习
JSP全名是Java Server Pages,它是建立在Servlet规范之上的动态网页开发技术。在JSP文件中,HTML代码与Java代码共同存在,其中,HTML代码用来实现网页中静态内容的显示,Java代码用来实现网页中动态内容的显示。为了与传统HTML有所区别,JSP文件的扩展名为.jsp。
Java帮帮
2018/07/27
8790
Web-第十一天 JSP学习
【JavaWeb】JSP基本语法、指令、九大内置对象、四大作用域
JSP 脚本元素是指嵌套在 <% 和 %> 之中的一条或多条 Java 程序代码。通过 JSP 脚本元素可以将
陶然同学
2023/02/27
9090
【JavaWeb】JSP基本语法、指令、九大内置对象、四大作用域
JavaWeb(二)jsp运行原理,九大内置对象
JSP运行原理: 每个JSP页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理。JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet) ,然后按照servlet的 调用方式进行调用。 由于JSP第一次访问时会翻译成servlet,所以第一次访问通常会比较慢,但第二次访问,JSP引擎如果发现JSP没有变化,就不再翻译,而是直接调用,所以程序的执行效率不会受到影响。 JSP引擎在调用JSP对应的_jspServlet时,会传递或创建9个与web开发
二十三年蝉
2018/02/28
1.3K0
JavaWeb(二)jsp运行原理,九大内置对象
16-JSP基础
Java Server Pages:Java服务器端页面,在该页面中既可以定义Java代码,也可以定义html标签,主要用于简化书写
Ywrby
2022/10/27
3310
16-JSP基础
JSP开发基础入门学习1
Tomcat 最后会将 jsp 文件编译后的(.class-字节码文件/.java-类)存放在目录/work/Catalina/localhost/项目名/org/apache/jsp 里面:
全栈工程师修炼指南
2020/10/23
1.3K0
JSP开发基础入门学习1
JavaWeb第三讲 JSP内置对象、基本动作指令、常见编译指令及四大作用域
当一个jsp页面第一次被访问的时候,jsp将执行以下三个步骤,之后的访问速度会因为class文件已经生成而大大提高,当jsp引擎发送一个客户端请求的时候,首先判断请求的jsp页面是否比对应生成的servlet文件,如果不同,对应的jsp需要重新编译。
易兮科技
2020/09/26
4500
程序员的20大JSP面试问题及答案
1.JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览
鱼找水需要时间
2023/12/23
2980
JavaWeb学习总结——JSP中的九个内置对象
时获得这些web对象的引用,特意定义了9个相应的变量,开发人员在JSP页面中通过这些变量就可以快速获得这9大对象的引用。
用户6182664
2019/10/22
9700
JSP与EL表达式重点学习笔记(1)
Jsp&el表达式 JSP指令 JSP指令概述 JSP指令的格式:<%@指令名 attr1=”” attr2=”” %>,一般都会把JSP指令放到JSP文件的最上方,但这不是必须的。 JSP中有三大指
Java帮帮
2018/03/19
9750
JSP与EL表达式重点学习笔记(1)
JSP第四篇【EL表达式介绍、获取各类数据、11个内置对象、执行运算、回显数据、自定义函数、fn方法库】
什么是EL表达式? 表达式语言(Expression Language,EL),EL表达式是用"${}"括起来的脚本,用来更方便的读取对象! EL表达式主要用来读取数据,进行内容的显示! 为什么要使用EL表达式? 为什么要使用EL表达式,我们先来看一下没有EL表达式是怎么样读取对象数据的吧! 在1.jsp中设置了Session属性 <%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%> <html> <head>
Java3y
2018/03/15
1.9K0
JSP第四篇【EL表达式介绍、获取各类数据、11个内置对象、执行运算、回显数据、自定义函数、fn方法库】
day11_JSP+EL+JSTL学习笔记
    JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。
黑泽君
2018/10/11
1.5K0
day11_JSP+EL+JSTL学习笔记
相关推荐
JSP第二篇【内置对象的介绍、4种属性范围、应用场景】
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验