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. 免费道路 bzoj 3624

    免费道路(1s 128MB)roads [输入样例] 5 7 21 3 04 5 13 2 05 3 14 3 01 2 14 2 1 [输出样例] 3 2 04 3 05 3 11 2 1 题解: ...

  2. javascript arguments(转)

    什么是arguments arguments 是是JavaScript里的一个内置对象,它很古怪,也经常被人所忽视,但实际上是很重要的.所有主要的js函数库都利用了arguments对象.所以agru ...

  3. 【干货分享】流程DEMO-合同会审表

    流程名: 合同会审表  业务描述: 合同的审批及签订  流程相关文件: 流程包.xml 事务呈批表业务服务.xml 事务呈批表主数据.xml  流程说明: 1.此流程必须先进行事务呈批表流程的配置才可 ...

  4. 敏捷软件开发VS传统软件工程

    敏捷软件开发:又称敏捷开发,是一种从1990年代开始逐渐引起广泛关注的一些新兴软件开发方法,是一种应对快速变化的需求的一种软件开发能力. 与传统软件工程相比,它们的具体名称.理念.过程.术语都不尽相同 ...

  5. [转]thinkphp 模板显示display和assign的用法

    thinkphp 模板显示display和assign的用法 $this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论 ...

  6. 初探java中this的用法

    一般this在各类语言中都表示“调用当前函数的对象”,java中也存在这种用法: public class Leaf { int i = 0; Leaf increment(){ i++; retur ...

  7. 使用“Cocos引擎”创建的cpp工程如何在VS中调试Cocos2d-x源码

    前段时间Cocos2d-x更新了一个Cocos引擎,这是一个集合源码,IDE,Studio这一家老小的整合包,我们可以使用这个Cocos引擎来创建我们的项目. 在Cocos2d-x被整合到Cocos引 ...

  8. Lesson 22 A glass envolops

    Text My daughter, Jane, never dreamed of receiving a letter from a girl of her own age in Holland. L ...

  9. 架构之路(八)从CurrentUser说起

    CurrentUser,也就是当前用户,这是我们系统中大量使用的一个概念. 确认当前用户 当然,我们利用的是cookie:用户的ID存放在cookie中,服务器端通过cookie中的Id,查找数据库, ...

  10. 搭建 windows(7)下Xgboost(0.4)环境 (python,java)以及使用介绍及参数调优

    摘要: 1.所需工具 2.详细过程 3.验证 4.使用指南 5.参数调优 内容: 1.所需工具 我用到了git(内含git bash),Visual Studio 2012(10及以上就可以),xgb ...