JSP,全称是Java Server Page,是运行在服务器端的页面,是建立在Servlet规范的动态网页技术,JSP文件在第一次请求时,会被编译成Servlet,所以JSP也可以看成是运行中的Servlet。JSP中HTML元素嵌入Java脚本和JSP标记。本文简单记录了JSP字面量、JSP指令、JSP脚本、JSP隐含对象及其作用范围几个点的内容。

JSP字面量类型
  • 布尔值(boolean)
  • 整型(int)
  • 浮点型(float)
  • 字符串(String)
  • Null:null
指令

JSP指令元素主要用于JSP转换为Servlet,用来设置与整个JSP页面相关的属性。提供整个JSP页面相关信息,不会产生输出JSP指令元素包括page、include、taglib。语法格式为<%@ directive attribute="value" %>

  • page定义网页依赖属性,比如脚本语言、error页面、缓存需求。一个JSP页面可以包含多个page指令,语法格式为<%@ page attribute="value %">

  • include包含其他文件,被包含的文件可以是JSP文件、HTML文件或文本文件,语法格式为<%@ include file="文件相对url地址">

  • taglib引入一个自定义标签集合的定义,包括库路径、自定义标签。语法格式为<%@ taglib uri="标签库的位置" prefix="标签库的前缀">

脚本程序

脚本程序包括声明,表达式和脚本段

  • JSP声明:一个声明语句可以声明一个或多个变量、方法,在JSP文件中,必须先声明变量和方法才能使用,语法格式为<%! 声明语句%>

  • JSP表达式:

    一个JSP表达式的元素可以包含符合Java语言规范的表达式,语法格式为<%= 表达式 >

  • JSP脚本段:

    脚本段可以包含任意的Java语句、变量、方法和表达式,语法格式为<% 代码片段 %>

JSP隐含对象

JSP隐式对象是JSP容器为每个页面提供的Java对象,开发者可以直接使用它们而不用显式声明。JSP隐式对象也被称为预定义变量。以下是JSP所支持的九大隐式对象

对象 描述 作用
request HttpServletRequest类的实例 封装客户端的请求信息
response HttpServletResponse类的实例 包含了响应客户端请求的有关信息
session HttpSession类的实例 会话是根据客户的请求自动生成的,即使没有引入会话时也会有一个新的会话可用
application ServletContext类的实例 与应用上下文有关实现了所有用户间数据的共享,可存放全局变量
config ServletConfig类的实例
pageContext PageContext类的实例 提供对JSP页面所有对象以及命名空间的访问
page 类似于Java类中的this关键字
out PrintWriter类的实例 用于把结果输出至网页上
Exception Exception类的对象 代表发生错误的JSP页面中对应的异常对象
对象的作用范围
  • page范围:作用域仅限于当前页面对象,可以理解为Java的this对象,离开当前JSP页面,所有属性值将会丢失。

  • request范围:作用域在同一请求之内,如果通过forword方式跳转页面,属性值保留。如果通过redirect方式跳转,相当于重新发出请求,属性值丢失

  • session范围:作用域在一个会话的生命周期

  • application范围:作用域为整个web运行期可用,为所有会话共享

JSP简单记录的更多相关文章

  1. jsp简单标签开发(一)

    孤傲苍狼 @Override22 public void doTag() throws JspException, IOException {23 //得到代表jsp标签体的JspFragment24 ...

  2. OpenCV安装配置的简单记录

    在ubuntu16.04下安装OpenCV 2.4.11的简单记录 1. 安装cmake,执行$apt-get install cmake即可,cmake -version验证 2. 下载OpenCV ...

  3. asp.net 简单记录请求的客户端和服务端 处理时间

    最近项目需要简单记录一下 ajax客户端和服务端处理时间,服务端时间的思路是借用BeginRequest和EndRequest事件,为了不影响现有接口返回的数据格式,因此服务处理时间放在respons ...

  4. JSP简单实现统计网页访问次数

    JSP简单实现统计网页访问次数 需求:统计网页的访问次数 核心思想:利用application对象,将访问次数的信息放入application对象中,每次访问就+1.这里利用了application对 ...

  5. JSP简单实现登录和注销

    JSP简单实现登录和注销 需求:用户登录成功后跳转到欢迎页面 用户登录失败跳转到初始的登录界面 用户点击注销,用户退出登录状态需要重新登录 登录页面的JSP代码: <%@ page langua ...

  6. PHP 版本简单记录

    PHP 版本简单记录 PHP 博物馆         http://museum.php.net/php5/ PHP 版本发布       https://secure.php.net/release ...

  7. 简单记录一次注入到shell

    0x00 前言 帮朋友之前拿的一个站,有点久了没有完整截图,简单记录一下. 0x01 基础信息 操作系统:win 集成环境:phpstudy 端口开放:82,3306,3389 有phpmyadmin ...

  8. 纯JSP简单登录实例

    记一下,免得以后忘记了,又要去查. 文件共有四个web.xml.login.jsp.logout.jsp.welcome.jsp四个文件 测试环境:Tomcat 6.0.x 假设项目名称是LoginS ...

  9. oracle SCN推进恢复数据库 简单记录

    由于是在内网专用机器上操作,没有日志记录,下面做个简单记录:   前几天某供电局的的一个老数据库存储挂了,数据全部丢失,该库没有开归档,没接备份,怎么恢复? 由于存储损坏严重,从存储恢复不好搞. 好在 ...

随机推荐

  1. 模仿Linux内核kfifo实现的循环缓存

    想实现个循环缓冲区(Circular Buffer),搜了些资料多数是基于循环队列的实现方式.使用一个变量存放缓冲区中的数据长度或者空出来一个空间来判断缓冲区是否满了.偶然间看到分析Linux内核的循 ...

  2. BPM端到端流程解决方案分享

    一.需求分析 1.企业规模的不断发展.管理水平的不断提升,通常伴随着企业各业务板块管理分工更细.更专业,IT系统同样越来越多.越来越专 业化.不可避免的,部门墙和信息孤岛出现了,企业的流程被部门或者I ...

  3. 【SAP业务模式】之ICS(一):业务详述

    PS:本专题系列讲述如何在SAP系统中实现ICS的业务模式,本系列博文系原创,如要转载引用,请保持原文一致并注明出处! SAP系统自身功能非常强大,支持多种业务模式,通过前台后台的配置就可以实现多种效 ...

  4. iOS之应用版本号的设置规则

    版本号的格式:v<主版本号>.<副版本号>.<发布号>  版本号的初始值:v1.0.0 管理规则: 主版本号(Major version) 1.  产品的主体构件进 ...

  5. Android6.0运行时权限管理

    自从Android6.0发布以来,在权限上做出了很大的变动,不再是之前的只要在manifest设置就可以任意获取权限,而是更加的注重用户的隐私和体验,不会再强迫用户因拒绝不该拥有的权限而导致的无法安装 ...

  6. 如何dos命令打开服务窗口?

    1.输入services.msc点击<确定>进入服务窗口.如图:

  7. 借助 SIMD 数据布局模板和数据预处理提高 SIMD 在动画中的使用效率

    原文链接 简介 为发挥 SIMD1 的最大作用,除了对其进行矢量化处理2外,我们还需作出其他努力.可以尝试为循环添加 #pragma omp simd3,查看编译器是否成功进行矢量化,如果性能有所提升 ...

  8. .Net中的AOP系列之《拦截位置》

    返回<.Net中的AOP>系列学习总目录 本篇目录 位置拦截 .Net中的字段和属性 PostSharp位置拦截 真实案例--懒加载 .Net中的懒加载 使用AOP实现懒加载 如何懒加载字 ...

  9. Building the Testing Pipeline

    This essay is a part of my knowledge sharing session slides which are shared for development and qua ...

  10. xcode低版本调试高版本真机系统

    低版本xcode调试本真机高版本系统 //打开此路径把最新的文件拷贝到这里就可以了 /Applications/Xcode.app/Contents/Developer/Platforms/iPhon ...